summaryrefslogtreecommitdiff
path: root/cli/semantics/elements.cxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2012-05-10 17:54:18 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2012-05-10 17:54:18 +0200
commit443293aaf09eca7c3b88d621d056c4effee2c248 (patch)
treea35c7b2354295b5b73462c0806e04e2deef58171 /cli/semantics/elements.cxx
parent4f9022f24c4591391637121c7274d9855b37bd93 (diff)
Implement option class inheritance
For now multiple, non-virtual inheritance is supported. An option class can now also be declared abstract using the class c = 0 {...}; syntax. New option, --exclude-base, controls whether base class information is present in usage and documentation.
Diffstat (limited to 'cli/semantics/elements.cxx')
-rw-r--r--cli/semantics/elements.cxx13
1 files changed, 13 insertions, 0 deletions
diff --git a/cli/semantics/elements.cxx b/cli/semantics/elements.cxx
index 04d6e03..3e87248 100644
--- a/cli/semantics/elements.cxx
+++ b/cli/semantics/elements.cxx
@@ -9,6 +9,19 @@
namespace semantics
{
+ // nameable
+ //
+ string nameable::
+ fq_name () const
+ {
+ string const& n (name ());
+
+ if (n.empty ())
+ return n;
+ else
+ return scope ().fq_name () + "::" + n;
+ }
+
// scope
//