diff options
Diffstat (limited to 'CIAO/CCF/CCF/IDL2/SemanticAction/Impl/Elements.hpp')
-rw-r--r-- | CIAO/CCF/CCF/IDL2/SemanticAction/Impl/Elements.hpp | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/CIAO/CCF/CCF/IDL2/SemanticAction/Impl/Elements.hpp b/CIAO/CCF/CCF/IDL2/SemanticAction/Impl/Elements.hpp index 9b32c0931e1..51da2657b5d 100644 --- a/CIAO/CCF/CCF/IDL2/SemanticAction/Impl/Elements.hpp +++ b/CIAO/CCF/CCF/IDL2/SemanticAction/Impl/Elements.hpp @@ -51,9 +51,11 @@ namespace CCF { public: Context (bool trace, - SemanticGraph::TranslationUnit& tu) + SemanticGraph::TranslationUnit& tu, + CompilerElements::Context& parsing_context) : trace_ (trace), - tu_ (tu) + tu_ (tu), + parsing_context_ (parsing_context) { } @@ -93,6 +95,18 @@ namespace CCF region_ = &r; } + CompilerElements::Context& + parsing_context () const + { + return parsing_context_; + } + + SemanticGraph::Path const& + file () const + { + return parsing_context_.get<SemanticGraph::Path> ("file-path"); + } + public: void int_exp_push (SemanticGraph::IntExpression& e) @@ -127,6 +141,8 @@ namespace CCF SemanticGraph::TranslationRegion* region_; SemanticGraph::Scope* scope_; + CompilerElements::Context& parsing_context_; + std::stack<SemanticGraph::IntExpression*> int_exp_stack_; private: |