Ninja
|
Public Member Functions | |
virtual void | Abort () |
virtual bool | CanRunMore () |
virtual vector< Edge * > | GetActiveEdges () |
RealCommandRunner (const BuildConfig &config) | |
virtual bool | StartCommand (Edge *edge) |
virtual bool | WaitForCommand (Result *result) |
Wait for a command to complete, or return false if interrupted. | |
virtual | ~RealCommandRunner () |
Public Attributes | |
const BuildConfig & | config_ |
map< Subprocess *, Edge * > | subproc_to_edge_ |
SubprocessSet | subprocs_ |
RealCommandRunner::RealCommandRunner | ( | const BuildConfig & | config | ) | [inline, explicit] |
virtual RealCommandRunner::~RealCommandRunner | ( | ) | [inline, virtual] |
void RealCommandRunner::Abort | ( | ) | [virtual] |
Reimplemented from CommandRunner.
Definition at line 484 of file build.cc.
References SubprocessSet::Clear(), and subprocs_.
bool RealCommandRunner::CanRunMore | ( | ) | [virtual] |
Implements CommandRunner.
Definition at line 488 of file build.cc.
References config_, GetLoadAverage(), BuildConfig::max_load_average, BuildConfig::parallelism, SubprocessSet::running_, and subprocs_.
vector< Edge * > RealCommandRunner::GetActiveEdges | ( | ) | [virtual] |
Reimplemented from CommandRunner.
Definition at line 476 of file build.cc.
References subproc_to_edge_.
bool RealCommandRunner::StartCommand | ( | Edge * | edge | ) | [virtual] |
Implements CommandRunner.
Definition at line 494 of file build.cc.
References SubprocessSet::Add(), Edge::EvaluateCommand(), subproc_to_edge_, and subprocs_.
bool RealCommandRunner::WaitForCommand | ( | Result * | result | ) | [virtual] |
Wait for a command to complete, or return false if interrupted.
Implements CommandRunner.
Definition at line 504 of file build.cc.
References SubprocessSet::DoWork(), CommandRunner::Result::edge, Subprocess::Finish(), Subprocess::GetOutput(), SubprocessSet::NextFinished(), CommandRunner::Result::output, CommandRunner::Result::status, subproc_to_edge_, and subprocs_.
Definition at line 471 of file build.cc.
Referenced by CanRunMore().
Definition at line 473 of file build.cc.
Referenced by GetActiveEdges(), StartCommand(), and WaitForCommand().
Definition at line 472 of file build.cc.
Referenced by Abort(), CanRunMore(), StartCommand(), and WaitForCommand().