namespace {{__namespace}}; {{~for enum in __enums typeName = full_name enum ~}} enum {{typeName}}:int { {{~if !enum.has_zero_value_item~}} __GENERATE_DEFAULT_VALUE = 0, {{~end~}} {{~for item in enum.items ~}} {{typeName}}_{{item.name}} = {{item.int_value}}, {{~end~}} } {{~end~}} {{~for bean in __beans~}} {{~if bean.is_abstract_type ~}} union {{full_name bean}} { {{~for c in bean.hierarchy_not_abstract_children~}} {{full_name c}}, {{~end~}} } {{~end~}} {{~end~}} {{~for bean in __beans~}} {{~if !bean.is_abstract_type ~}} table {{full_name bean}} { {{~for f in bean.hierarchy_export_fields ~}} {{f.name}}:{{declaring_type_name f.ctype}}{{type_metadata f.ctype}}; {{~end~}} } {{~end~}} {{~end~}} {{~for map in __maps~}} table KeyValue_{{declaring_type_name map.key_type}}_{{declaring_type_name map.value_type}} { key: {{declaring_type_name map.key_type}}{{type_metadata map.key_type}}; value: {{declaring_type_name map.value_type}}{{type_metadata map.value_type}}; } {{~end~}} {{~for table in __tables~}} table {{full_name table}} { // WARN! The name 'data_list' is used by FlatBuffersJsonExporter. don't modify it! data_list:[{{declaring_type_name table.value_ttype}}](required); } root_type {{full_name table}}; {{~end~}}