diff options
| author | Dan Willemsen <dwillemsen@google.com> | 2020-06-29 22:33:05 -0700 |
|---|---|---|
| committer | Dan Willemsen <dwillemsen@google.com> | 2020-06-29 22:33:05 -0700 |
| commit | 5125da301ca0a1680c26b5d9f574dc174fdfa98c (patch) | |
| tree | db93815340f8e87080791cf7bc93e135234e9387 /src/command.h | |
| parent | e184ff147273cfd25d37692dba4be72eca571e9f (diff) | |
| parent | 06a798c4db92ec3a3a6b3a4b52026f002002affa (diff) | |
| download | platform_build_kati-master.tar.gz platform_build_kati-master.tar.bz2 platform_build_kati-master.zip | |
* aosp/upstream:
Support git submodules in version.cc generation.
Link ckati against jemalloc if host machine runs Linux.
Support building in a git worktree
Fix flaky test
Switch to a golang-based test runner
Refactor source tree into directories
Test: treehugger
Change-Id: I6cca6108531c4c32e3848bf6b532a99aef0f06c2
Diffstat (limited to 'src/command.h')
| -rw-r--r-- | src/command.h | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/src/command.h b/src/command.h new file mode 100644 index 0000000..5e86333 --- /dev/null +++ b/src/command.h @@ -0,0 +1,46 @@ +// Copyright 2015 Google Inc. All rights reserved +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#ifndef COMMAND_H_ +#define COMMAND_H_ + +#include <vector> + +#include "symtab.h" + +using namespace std; + +struct DepNode; +class Evaluator; + +struct Command { + explicit Command(Symbol o) : output(o), echo(true), ignore_error(false) {} + Symbol output; + string cmd; + bool echo; + bool ignore_error; +}; + +class CommandEvaluator { + public: + explicit CommandEvaluator(Evaluator* ev); + void Eval(DepNode* n, vector<Command*>* commands); + const DepNode* current_dep_node() const { return current_dep_node_; } + + private: + Evaluator* ev_; + DepNode* current_dep_node_; +}; + +#endif // COMMAND_H_ |
