X-Git-Url: http://biod.pnpi.spb.ru/gitweb/?a=blobdiff_plain;f=src%2Fgromacs%2Fcommandline%2Fshellcompletions.cpp;fp=src%2Fgromacs%2Fcommandline%2Fshellcompletions.cpp;h=520ff469092dfc79a25b7095c878ff35b6aaed9f;hb=5750bfe806310856448a1e7baf46a7d648d1185e;hp=ce9f08a71779219b18ce4cb5a4786e91d9b17339;hpb=61ba45d5a1865eace484126b5beeb2ea286fc6d7;p=alexxy%2Fgromacs.git diff --git a/src/gromacs/commandline/shellcompletions.cpp b/src/gromacs/commandline/shellcompletions.cpp index ce9f08a717..520ff46909 100644 --- a/src/gromacs/commandline/shellcompletions.cpp +++ b/src/gromacs/commandline/shellcompletions.cpp @@ -59,9 +59,9 @@ #include "gromacs/options/optionsvisitor.h" #include "gromacs/utility/arrayref.h" #include "gromacs/utility/exceptions.h" -#include "gromacs/utility/file.h" #include "gromacs/utility/gmxassert.h" #include "gromacs/utility/stringutil.h" +#include "gromacs/utility/textwriter.h" namespace gmx { @@ -107,7 +107,7 @@ class OptionsListWriter : public OptionsVisitor class OptionCompletionWriter : public OptionsVisitor { public: - explicit OptionCompletionWriter(File *out) : out_(*out) {} + explicit OptionCompletionWriter(TextWriter *out) : out_(*out) {} virtual void visitSubSection(const Options §ion) { @@ -121,7 +121,7 @@ class OptionCompletionWriter : public OptionsVisitor void writeOptionCompletion(const OptionInfo &option, const std::string &completion); - File &out_; + TextWriter &out_; }; void OptionCompletionWriter::visitOption(const OptionInfo &option) @@ -196,8 +196,8 @@ class ShellCompletionWriter::Impl return formatString("_%s_%s_compl", binaryName_.c_str(), moduleName); } - std::string binaryName_; - boost::scoped_ptr file_; + std::string binaryName_; + boost::scoped_ptr file_; }; ShellCompletionWriter::ShellCompletionWriter(const std::string &binaryName, @@ -210,21 +210,21 @@ ShellCompletionWriter::~ShellCompletionWriter() { } -File *ShellCompletionWriter::outputFile() +TextOutputStream &ShellCompletionWriter::outputStream() { - return impl_->file_.get(); + return impl_->file_->stream(); } void ShellCompletionWriter::startCompletions() { - impl_->file_.reset(new File(impl_->binaryName_ + "-completion.bash", "w")); + impl_->file_.reset(new TextWriter(impl_->binaryName_ + "-completion.bash")); } void ShellCompletionWriter::writeModuleCompletions( const char *moduleName, const Options &options) { - File &out = *impl_->file_; + TextWriter &out = *impl_->file_; out.writeLine(formatString("%s() {", impl_->completionFunctionName(moduleName).c_str())); out.writeLine("local IFS=$'\\n'"); out.writeLine("local c=${COMP_WORDS[COMP_CWORD]}");