aboutsummaryrefslogtreecommitdiffstats
path: root/ast.cc
diff options
context:
space:
mode:
authorShinichiro Hamaji <shinichiro.hamaji@gmail.com>2015-06-16 23:07:21 +0900
committerShinichiro Hamaji <shinichiro.hamaji@gmail.com>2015-06-18 11:25:43 +0900
commit42b625f3573f8026e8c6da3231fdf1721320da25 (patch)
tree94d0580d2590ffc1222d72f0703e2cd30b468dfc /ast.cc
parent5e26e2277f026594eebc303225c937245b73c7f5 (diff)
downloadplatform_build_kati-42b625f3573f8026e8c6da3231fdf1721320da25.tar.gz
platform_build_kati-42b625f3573f8026e8c6da3231fdf1721320da25.tar.bz2
platform_build_kati-42b625f3573f8026e8c6da3231fdf1721320da25.zip
[C++] Parse include directives
Diffstat (limited to 'ast.cc')
-rw-r--r--ast.cc13
1 files changed, 13 insertions, 0 deletions
diff --git a/ast.cc b/ast.cc
index b755ce9..79cea85 100644
--- a/ast.cc
+++ b/ast.cc
@@ -41,6 +41,11 @@ string CommandAST::DebugString() const {
expr->DebugString().c_str(), LOCF(loc()));
}
+string IncludeAST::DebugString() const {
+ return StringPrintf("IncludeAST(%s, loc=%s:%d)",
+ expr->DebugString().c_str(), LOCF(loc()));
+}
+
RuleAST::~RuleAST() {
delete expr;
delete after_term;
@@ -66,3 +71,11 @@ CommandAST::~CommandAST() {
void CommandAST::Eval(Evaluator* ev) const {
ev->EvalCommand(this);
}
+
+IncludeAST::~IncludeAST() {
+ delete expr;
+}
+
+void IncludeAST::Eval(Evaluator* ev) const {
+ ev->EvalInclude(this);
+}