aboutsummaryrefslogtreecommitdiff
path: root/xsde/cxx/hybrid/elements.hxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2009-03-11 17:32:01 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2009-03-11 17:32:01 +0200
commit0bfda486167432a9da8eec62b4578a22592a9275 (patch)
tree968d622d3918c9ac969de8b9c1e97e67b6cbee8b /xsde/cxx/hybrid/elements.hxx
parentf8bb2faef4b272ed150eb3ca4cedaa79da410694 (diff)
Add generation of detach functions
New option: --generate-detach. Also added detach/attach functionality to var_seq, non-STL str_seq, and string_base.
Diffstat (limited to 'xsde/cxx/hybrid/elements.hxx')
-rw-r--r--xsde/cxx/hybrid/elements.hxx17
1 files changed, 17 insertions, 0 deletions
diff --git a/xsde/cxx/hybrid/elements.hxx b/xsde/cxx/hybrid/elements.hxx
index f5d959b..cd1a40f 100644
--- a/xsde/cxx/hybrid/elements.hxx
+++ b/xsde/cxx/hybrid/elements.hxx
@@ -44,6 +44,7 @@ namespace CXX
poly_code (c.poly_code),
poly_runtime (c.poly_runtime),
reset (c.reset),
+ detach (c.detach),
mixin (c.mixin),
tiein (c.tiein),
fwd_expr (c.fwd_expr),
@@ -67,6 +68,7 @@ namespace CXX
poly_code (c.poly_code),
poly_runtime (c.poly_runtime),
reset (c.reset),
+ detach (c.detach),
mixin (c.mixin),
tiein (c.tiein),
fwd_expr (c.fwd_expr),
@@ -109,6 +111,20 @@ namespace CXX
return a.context ().get<String> ("member");
}
+ // Detach.
+ //
+ static String const&
+ edetach (SemanticGraph::Particle& p)
+ {
+ return p.context ().get<String> ("detach");
+ }
+
+ static String const&
+ edetach (SemanticGraph::Attribute& a)
+ {
+ return a.context ().get<String> ("detach");
+ }
+
// Optional.
//
static String const&
@@ -524,6 +540,7 @@ namespace CXX
Boolean poly_code;
Boolean poly_runtime;
Boolean reset;
+ Boolean detach;
Boolean mixin;
Boolean tiein;