+static void CYParseStructure(CXCursor cursor, CYTypedIdentifier *typed) {
+ CYList<CYTypeStructField> fields;
+ CYForChild(cursor, fun([&](CXCursor child) {
+ if (clang_getCursorKind(child) == CXCursor_FieldDecl) {
+ CYTypedIdentifier *field(CYDecodeType(clang_getCursorType(child), child));
+ fields->*$ CYTypeStructField(field);
+ }
+ }));
+
+ typed->specifier_ = $ CYTypeStruct(NULL, $ CYStructTail(fields));
+}
+