summaryrefslogtreecommitdiff
path: root/CIAO/CCF/CCF/IDL2/SemanticAction/Impl/Elements.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'CIAO/CCF/CCF/IDL2/SemanticAction/Impl/Elements.hpp')
-rw-r--r--CIAO/CCF/CCF/IDL2/SemanticAction/Impl/Elements.hpp20
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: