DStep - Bindings Generator 0.0.1
Jacob Carlborg
doob at me.com
Fri Jul 20 07:41:02 PDT 2012
On 2012-07-20 15:04, Andrej Mitrovic wrote:
> On 7/7/12, Jacob Carlborg <doob at me.com> wrote:
>> snip
>
> Nice work!
>
> Can I ask you something? Do you know if (lib)clang exports typeinfo
> for default values? For example:
>
> namespace Foo
> {
> enum En
> {
> Val1,
> Val2
> };
> }
>
> void test(int x = Foo::Val1) { }
>
> 'x' has typeinfo (it's an int), but I'm interested in the typeinfo for
> the default value "Foo::Val1". In other tools (like gccxml) the
> default value is exported as a string which makes generating default
> values in D hard (not impossible but just hard).
In libclang, the kind of "Foo::Val1" in the above example is:
CXCursor_FirstExpr -> CXCursor_DeclRefExpr -> CXCursor_NamespaceRef.
What I did here was I checked the kind of "Foo::Val1" cursor, drilled
down into the cursor children as far as possible.
Cursor kinds:
http://clang.llvm.org/doxygen/group__CINDEX.html#gaaccc432245b4cd9f2d470913f9ef0013
--
/Jacob Carlborg
More information about the Digitalmars-d-announce
mailing list