本文整理汇总了C++中inode_state::function_final_rmr方法的典型用法代码示例。如果您正苦于以下问题:C++ inode_state::function_final_rmr方法的具体用法?C++ inode_state::function_final_rmr怎么用?C++ inode_state::function_final_rmr使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类inode_state
的用法示例。
在下文中一共展示了inode_state::function_final_rmr方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: fn_rmr
void fn_rmr (inode_state& state, const wordvec& words){
DEBUGF ('c', state);
DEBUGF ('c', words);
if(words.size() == 1){
complain() << "rmr: Specify file name" << endl;
} else if(words.size() > 2){
complain() << "rmr: Too many arguments" << endl;
} else if(words.at(1) == "." or words.at(1) == ".." or
(words.at(1).at(0) == '/' and words.at(1).length() == 1)){
complain() << "rmr: Cannot remove directory" << endl;
} else {
path_name_set(words.at(1));
const auto placeholder = state.get_cwd();
if(words.at(1).at(0) == '/') state.setCwd(state.get_root());
wordvec navpath = split(words[1], "/");
string ffname = navpath.back();
if(navpath.size() == 1){
state.function_rmr(state.get_cwd(), ffname);
return;
}
wordvec filepath(&navpath[0], &navpath[navpath.size() - 1]);
state.function_final_rmr(ffname, filepath);
state.setCwd(placeholder);
}
}