diff --git a/src/ctrl/ctrl.mdesk b/src/ctrl/ctrl.mdesk index c2518c54..af133ebc 100644 --- a/src/ctrl/ctrl.mdesk +++ b/src/ctrl/ctrl.mdesk @@ -56,30 +56,26 @@ CTRL_ExceptionCodeKindTable: COUNT, } -@table_gen_data(type:U32, fallback:0) -ctrl_exception_code_kind_code_table: +@data(U32) ctrl_exception_code_kind_code_table: { - `0,`; - @expand(CTRL_ExceptionCodeKindTable a) `$(a.code),`; + `0`; + @expand(CTRL_ExceptionCodeKindTable a) `$(a.code)`; } -@table_gen_data(type:String8, fallback:`{0}`) -ctrl_exception_code_kind_display_string_table: +@data(String8) ctrl_exception_code_kind_display_string_table: { - `{0},`; - @expand(CTRL_ExceptionCodeKindTable a) `str8_lit_comp("$(a.display_string)"),`; + `{0}`; + @expand(CTRL_ExceptionCodeKindTable a) `str8_lit_comp("$(a.display_string)")`; } -@table_gen_data(type:String8, fallback:`{0}`) -ctrl_exception_code_kind_lowercase_code_string_table: +@data(String8) ctrl_exception_code_kind_lowercase_code_string_table: { - `{0},`; - @expand(CTRL_ExceptionCodeKindTable a) `str8_lit_comp("$(a.lower_name)"),`; + `{0}`; + @expand(CTRL_ExceptionCodeKindTable a) `str8_lit_comp("$(a.lower_name)")`; } -@table_gen_data(type:B8, fallback:0) -ctrl_exception_code_kind_default_enable_table: +@data(B8) ctrl_exception_code_kind_default_enable_table: { - `0,`; - @expand(CTRL_ExceptionCodeKindTable a) `$(a.default),`; + `0`; + @expand(CTRL_ExceptionCodeKindTable a) `$(a.default)`; } diff --git a/src/df/core/df_core.mdesk b/src/df/core/df_core.mdesk index 38e533f9..05ffc66c 100644 --- a/src/df/core/df_core.mdesk +++ b/src/df/core/df_core.mdesk @@ -1739,108 +1739,90 @@ DF_DevToggleTable: @expand(DF_CmdParamSlotTable a) `$(a.c_type) $(a.name_lower)`; } -@table_gen_data(type:Rng1U64, fallback:0) -df_g_cmd_param_slot_range_table: +@data(Rng1U64) df_g_cmd_param_slot_range_table: { - `{0},` - @expand(DF_CmdParamSlotTable a) - `{OffsetOf(DF_CmdParams, $(a.name_lower)), OffsetOf(DF_CmdParams, $(a.name_lower)) + sizeof($(a.c_type))},` + `{0}`, + @expand(DF_CmdParamSlotTable a) `{OffsetOf(DF_CmdParams, $(a.name_lower)), OffsetOf(DF_CmdParams, $(a.name_lower)) + sizeof($(a.c_type))}`, } //- rjf: entity kind tables -@table_gen_data(type: DF_IconKind, fallback: `DF_IconKind_Null`) -df_g_entity_kind_icon_kind_table: +@data(DF_IconKind) df_g_entity_kind_icon_kind_table: { - @expand(DF_EntityKindTable a) `DF_IconKind_$(a.icon_kind),`; + @expand(DF_EntityKindTable a) `DF_IconKind_$(a.icon_kind)`, } -@table_gen_data(type: String8, fallback: `{0}`) -df_g_entity_kind_display_string_table: +@data(String8) df_g_entity_kind_display_string_table: { - @expand(DF_EntityKindTable a) `str8_lit_comp("$(a.display_string)"),`; + @expand(DF_EntityKindTable a) `str8_lit_comp("$(a.display_string)")`, } -@table_gen_data(type: String8, fallback: `{0}`) -df_g_entity_kind_name_label_table: +@data(String8) df_g_entity_kind_name_label_table: { - @expand(DF_EntityKindTable a) `str8_lit_comp("$(a.name_label)"),`; + @expand(DF_EntityKindTable a) `str8_lit_comp("$(a.name_label)")`, } -@table_gen_data(type:DF_EntityKindFlags, fallback: `0`) -df_g_entity_kind_flags_table: +@data(DF_EntityKindFlags) df_g_entity_kind_flags_table: { - @expand(DF_EntityKindTable a) `($(a.lf_mut_user_cfg)*DF_EntityKindFlag_LeafMutationUserConfig | $(a.lf_mut_prof_cfg)*DF_EntityKindFlag_LeafMutationProfileConfig | $(a.lf_mut_halt)*DF_EntityKindFlag_LeafMutationSoftHalt | $(a.lf_mut_dbg)*DF_EntityKindFlag_LeafMutationDebugInfoMap | $(a.tr_mut_user_cfg)*DF_EntityKindFlag_TreeMutationUserConfig | $(a.tr_mut_prof_cfg)*DF_EntityKindFlag_TreeMutationProfileConfig | $(a.tr_mut_halt)*DF_EntityKindFlag_TreeMutationSoftHalt | $(a.tr_mut_dbg)*DF_EntityKindFlag_TreeMutationDebugInfoMap | $(a.name_is_code)*DF_EntityKindFlag_NameIsCode | $(a.user_lifetime)*DF_EntityKindFlag_UserDefinedLifetime),`; + @expand(DF_EntityKindTable a) `($(a.lf_mut_user_cfg)*DF_EntityKindFlag_LeafMutationUserConfig | $(a.lf_mut_prof_cfg)*DF_EntityKindFlag_LeafMutationProfileConfig | $(a.lf_mut_halt)*DF_EntityKindFlag_LeafMutationSoftHalt | $(a.lf_mut_dbg)*DF_EntityKindFlag_LeafMutationDebugInfoMap | $(a.tr_mut_user_cfg)*DF_EntityKindFlag_TreeMutationUserConfig | $(a.tr_mut_prof_cfg)*DF_EntityKindFlag_TreeMutationProfileConfig | $(a.tr_mut_halt)*DF_EntityKindFlag_TreeMutationSoftHalt | $(a.tr_mut_dbg)*DF_EntityKindFlag_TreeMutationDebugInfoMap | $(a.name_is_code)*DF_EntityKindFlag_NameIsCode | $(a.user_lifetime)*DF_EntityKindFlag_UserDefinedLifetime)`, } -@table_gen_data(type: DF_EntityOpFlags, fallback: `0`) -df_g_entity_kind_op_flags_table: +@data(DF_EntityOpFlags) df_g_entity_kind_op_flags_table: { - @expand(DF_EntityKindTable a) `($(a.op_delete)*DF_EntityOpFlag_Delete) | ($(a.op_freeze)*DF_EntityOpFlag_Freeze) | ($(a.op_edit)*DF_EntityOpFlag_Edit) | ($(a.op_rename)*DF_EntityOpFlag_Rename) | ($(a.op_enable)*DF_EntityOpFlag_Enable) | ($(a.op_cond)*DF_EntityOpFlag_Condition) | ($(a.op_dup)*DF_EntityOpFlag_Duplicate),`; + @expand(DF_EntityKindTable a) `($(a.op_delete)*DF_EntityOpFlag_Delete) | ($(a.op_freeze)*DF_EntityOpFlag_Freeze) | ($(a.op_edit)*DF_EntityOpFlag_Edit) | ($(a.op_rename)*DF_EntityOpFlag_Rename) | ($(a.op_enable)*DF_EntityOpFlag_Enable) | ($(a.op_cond)*DF_EntityOpFlag_Condition) | ($(a.op_dup)*DF_EntityOpFlag_Duplicate)`, } //- rjf: config source tables -@table_gen_data(type: String8, fallback: DF_CoreCmdKind_Null) -df_g_cfg_src_string_table: +@data(String8) df_g_cfg_src_string_table: { - @expand(DF_CfgSrcTable a) `str8_lit_comp("$(a.string)"),`; + @expand(DF_CfgSrcTable a) `str8_lit_comp("$(a.string)")`, } -@table_gen_data(type: DF_CoreCmdKind, fallback: DF_CoreCmdKind_Null) -df_g_cfg_src_load_cmd_kind_table: +@data(DF_CoreCmdKind) df_g_cfg_src_load_cmd_kind_table: { - @expand(DF_CfgSrcTable a) `DF_CoreCmdKind_$(a.load_cmd),`; + @expand(DF_CfgSrcTable a) `DF_CoreCmdKind_$(a.load_cmd)`, } -@table_gen_data(type: DF_CoreCmdKind, fallback: DF_CoreCmdKind_Null) -df_g_cfg_src_write_cmd_kind_table: +@data(DF_CoreCmdKind) df_g_cfg_src_write_cmd_kind_table: { - @expand(DF_CfgSrcTable a) `DF_CoreCmdKind_$(a.write_cmd),`; + @expand(DF_CfgSrcTable a) `DF_CoreCmdKind_$(a.write_cmd)`, } -@table_gen_data(type: DF_CoreCmdKind, fallback: DF_CoreCmdKind_Null) -df_g_cfg_src_apply_cmd_kind_table: +@data(DF_CoreCmdKind) df_g_cfg_src_apply_cmd_kind_table: { - @expand(DF_CfgSrcTable a) `DF_CoreCmdKind_$(a.apply_cmd),`; + @expand(DF_CfgSrcTable a) `DF_CoreCmdKind_$(a.apply_cmd)`; } //- rjf: core view rule function prototypes @table_gen { - ``; - @expand(DF_CoreViewRuleTable a) - `$(a.er == "x" -> "DF_CORE_VIEW_RULE_EVAL_RESOLUTION_FUNCTION_DEF(" .. a.name_lower .. ");")`; - @expand(DF_CoreViewRuleTable a) - `$(a.vb == "x" -> "DF_CORE_VIEW_RULE_VIZ_BLOCK_PROD_FUNCTION_DEF(" .. a.name_lower .. ");")`; + @expand(DF_CoreViewRuleTable a) `$(a.er == "x" -> "DF_CORE_VIEW_RULE_EVAL_RESOLUTION_FUNCTION_DEF(" .. a.name_lower .. ");")`; + @expand(DF_CoreViewRuleTable a) `$(a.vb == "x" -> "DF_CORE_VIEW_RULE_VIZ_BLOCK_PROD_FUNCTION_DEF(" .. a.name_lower .. ");")`; } //- rjf: core command kind tables -@table_gen_data(type: DF_CmdSpecInfo, fallback: `{0}`) @c_file -df_g_core_cmd_kind_spec_info_table: +@data(DF_CmdSpecInfo) @c_file df_g_core_cmd_kind_spec_info_table: { @expand(DF_CoreCmdTable, a) - ```{ str8_lit_comp("$(a.string)"), str8_lit_comp("$(a.desc)"), str8_lit_comp("$(a.search_tags)"), str8_lit_comp("$(a.display_name)"), (DF_CmdSpecFlag_OmitFromLists*$(a.lister_omit)), {DF_CmdParamSlot_$(a.q_slot), DF_EntityKind_$(a.q_ent_kind), (DF_CmdQueryFlag_AllowFiles*$(a.q_allow_files))|(DF_CmdQueryFlag_AllowFolders*$(a.q_allow_folders))|(DF_CmdQueryFlag_CodeInput*$(a.q_is_code))|(DF_CmdQueryFlag_KeepOldInput*$(a.q_keep_oi))|(DF_CmdQueryFlag_SelectOldInput*$(a.q_select_oi))|(DF_CmdQueryFlag_Required*$(a.q_required))}, DF_IconKind_$(a.canonical_icon)},```; + ```{ str8_lit_comp("$(a.string)"), str8_lit_comp("$(a.desc)"), str8_lit_comp("$(a.search_tags)"), str8_lit_comp("$(a.display_name)"), (DF_CmdSpecFlag_OmitFromLists*$(a.lister_omit)), {DF_CmdParamSlot_$(a.q_slot), DF_EntityKind_$(a.q_ent_kind), (DF_CmdQueryFlag_AllowFiles*$(a.q_allow_files))|(DF_CmdQueryFlag_AllowFolders*$(a.q_allow_folders))|(DF_CmdQueryFlag_CodeInput*$(a.q_is_code))|(DF_CmdQueryFlag_KeepOldInput*$(a.q_keep_oi))|(DF_CmdQueryFlag_SelectOldInput*$(a.q_select_oi))|(DF_CmdQueryFlag_Required*$(a.q_required))}, DF_IconKind_$(a.canonical_icon)}```; } //- rjf: core view rule tables -@table_gen_data(type: DF_CoreViewRuleSpecInfo, fallback: `{0}`) @c_file -df_g_core_view_rule_spec_info_table: +@data(DF_CoreViewRuleSpecInfo) @c_file df_g_core_view_rule_spec_info_table: { @expand(DF_CoreViewRuleTable a) - ```{str8_lit_comp("$(a.string)"), str8_lit_comp("$(a.display_name)"), str8_lit_comp("$(a.description)"), (DF_CoreViewRuleSpecInfoFlag_Inherited*$(a.ih == "x"))|(DF_CoreViewRuleSpecInfoFlag_Expandable*$(a.ex == "x"))|(DF_CoreViewRuleSpecInfoFlag_EvalResolution*$(a.er == "x"))|(DF_CoreViewRuleSpecInfoFlag_VizBlockProd*$(a.vb == "x")), $(a.er == "x" -> "DF_CORE_VIEW_RULE_EVAL_RESOLUTION_FUNCTION_NAME("..a.name_lower..")") $(a.er != "x" -> 0), $(a.vb == "x" -> "DF_CORE_VIEW_RULE_VIZ_BLOCK_PROD_FUNCTION_NAME("..a.name_lower..")") $(a.vb != "x" -> 0), },```; + ```{str8_lit_comp("$(a.string)"), str8_lit_comp("$(a.display_name)"), str8_lit_comp("$(a.description)"), (DF_CoreViewRuleSpecInfoFlag_Inherited*$(a.ih == "x"))|(DF_CoreViewRuleSpecInfoFlag_Expandable*$(a.ex == "x"))|(DF_CoreViewRuleSpecInfoFlag_EvalResolution*$(a.er == "x"))|(DF_CoreViewRuleSpecInfoFlag_VizBlockProd*$(a.vb == "x")), $(a.er == "x" -> "DF_CORE_VIEW_RULE_EVAL_RESOLUTION_FUNCTION_NAME("..a.name_lower..")") $(a.er != "x" -> 0), $(a.vb == "x" -> "DF_CORE_VIEW_RULE_VIZ_BLOCK_PROD_FUNCTION_NAME("..a.name_lower..")") $(a.vb != "x" -> 0), }```; } //- rjf: icon kinds -@table_gen_data(type: String8, fallback: `{0}`) -df_g_icon_kind_text_table: +@data(String8) df_g_icon_kind_text_table: { - @expand(DF_IconTable a) - `str8_lit_comp("$(a.text)"),`; + @expand(DF_IconTable a) `str8_lit_comp("$(a.text)")`; } //- rjf: instruction metadata table diff --git a/src/df/core/generated/df_core.meta.h b/src/df/core/generated/df_core.meta.h index e230ae14..9179a020 100644 --- a/src/df/core/generated/df_core.meta.h +++ b/src/df/core/generated/df_core.meta.h @@ -409,7 +409,6 @@ B32 prefer_dasm; B32 force_confirm; }; - DF_CORE_VIEW_RULE_EVAL_RESOLUTION_FUNCTION_DEF(array); DF_CORE_VIEW_RULE_EVAL_RESOLUTION_FUNCTION_DEF(bswap); DF_CORE_VIEW_RULE_VIZ_BLOCK_PROD_FUNCTION_DEF(list); diff --git a/src/df/gfx/df_gfx.mdesk b/src/df/gfx/df_gfx.mdesk index b23f55ae..bccbe663 100644 --- a/src/df/gfx/df_gfx.mdesk +++ b/src/df/gfx/df_gfx.mdesk @@ -420,118 +420,100 @@ DF_ThemePresetColorTable: //- rjf: theme preset color tables -@table_gen_data(type: String8, fallback: `{0}`) -df_g_theme_preset_display_string_table: +@data(String8) df_g_theme_preset_display_string_table: { - @expand(DF_ThemePresetTable a) `str8_lit_comp("$(a.display_string)"),`; + @expand(DF_ThemePresetTable a) `str8_lit_comp("$(a.display_string)")`, } -@table_gen_data(type: String8, fallback: `{0}`) -df_g_theme_preset_code_string_table: +@data(String8) df_g_theme_preset_code_string_table: { - @expand(DF_ThemePresetTable a) `str8_lit_comp("$(a.name_lower)"),`; + @expand(DF_ThemePresetTable a) `str8_lit_comp("$(a.name_lower)")`, } -@table_gen_data(type: Vec4F32, fallback: `{1, 0, 1, 1}`) -df_g_theme_preset_colors__default_dark: +@data(Vec4F32) df_g_theme_preset_colors__default_dark: { - @expand(DF_ThemePresetColorTable a) `rgba_from_u32_lit_comp($(a.default_dark)),`; + @expand(DF_ThemePresetColorTable a) `rgba_from_u32_lit_comp($(a.default_dark))`, } -@table_gen_data(type: Vec4F32, fallback: `{1, 0, 1, 1}`) -df_g_theme_preset_colors__default_light: +@data(Vec4F32) df_g_theme_preset_colors__default_light: { - @expand(DF_ThemePresetColorTable a) `rgba_from_u32_lit_comp($(a.default_light)),`; + @expand(DF_ThemePresetColorTable a) `rgba_from_u32_lit_comp($(a.default_light))`, } -@table_gen_data(type: Vec4F32, fallback: `{1, 0, 1, 1}`) -df_g_theme_preset_colors__vs_dark: +@data(Vec4F32) df_g_theme_preset_colors__vs_dark: { - @expand(DF_ThemePresetColorTable a) `rgba_from_u32_lit_comp($(a.vs_dark)),`; + @expand(DF_ThemePresetColorTable a) `rgba_from_u32_lit_comp($(a.vs_dark))`, } -@table_gen_data(type: Vec4F32, fallback: `{1, 0, 1, 1}`) -df_g_theme_preset_colors__vs_light: +@data(Vec4F32) df_g_theme_preset_colors__vs_light: { - @expand(DF_ThemePresetColorTable a) `rgba_from_u32_lit_comp($(a.vs_light)),`; + @expand(DF_ThemePresetColorTable a) `rgba_from_u32_lit_comp($(a.vs_light))`, } -@table_gen_data(type: Vec4F32, fallback: `{1, 0, 1, 1}`) -df_g_theme_preset_colors__solarized_dark: +@data(Vec4F32) df_g_theme_preset_colors__solarized_dark: { - @expand(DF_ThemePresetColorTable a) `rgba_from_u32_lit_comp($(a.solarized_dark)),`; + @expand(DF_ThemePresetColorTable a) `rgba_from_u32_lit_comp($(a.solarized_dark))`, } -@table_gen_data(type: Vec4F32, fallback: `{1, 0, 1, 1}`) -df_g_theme_preset_colors__solarized_light: +@data(Vec4F32) df_g_theme_preset_colors__solarized_light: { - @expand(DF_ThemePresetColorTable a) `rgba_from_u32_lit_comp($(a.solarized_light)),`; + @expand(DF_ThemePresetColorTable a) `rgba_from_u32_lit_comp($(a.solarized_light))`, } -@table_gen_data(type: Vec4F32, fallback: `{1, 0, 1, 1}`) -df_g_theme_preset_colors__handmade_hero: +@data(Vec4F32) df_g_theme_preset_colors__handmade_hero: { - @expand(DF_ThemePresetColorTable a) `rgba_from_u32_lit_comp($(a.handmade_hero)),`; + @expand(DF_ThemePresetColorTable a) `rgba_from_u32_lit_comp($(a.handmade_hero))`, } -@table_gen_data(type: Vec4F32, fallback: `{1, 0, 1, 1}`) -df_g_theme_preset_colors__four_coder: +@data(Vec4F32) df_g_theme_preset_colors__four_coder: { - @expand(DF_ThemePresetColorTable a) `rgba_from_u32_lit_comp($(a.four_coder)),`; + @expand(DF_ThemePresetColorTable a) `rgba_from_u32_lit_comp($(a.four_coder))`, } -@table_gen_data(type: Vec4F32, fallback: `{1, 0, 1, 1}`) -df_g_theme_preset_colors__far_manager: +@data(Vec4F32) df_g_theme_preset_colors__far_manager: { - @expand(DF_ThemePresetColorTable a) `rgba_from_u32_lit_comp($(a.far_manager)),`; + @expand(DF_ThemePresetColorTable a) `rgba_from_u32_lit_comp($(a.far_manager))`; } -@table_gen_data(type: `Vec4F32 *`, fallback: `0`) -df_g_theme_preset_colors_table: +@data(`Vec4F32*`) df_g_theme_preset_colors_table: { - @expand(DF_ThemePresetTable a) `df_g_theme_preset_colors__$(a.name_lower),`; + @expand(DF_ThemePresetTable a) `df_g_theme_preset_colors__$(a.name_lower)`, } //- rjf: cmd param slot -> view spec tables -@table_gen_data(type: DF_CmdParamSlot, fallback:`DF_CmdParamSlot_Null`) -df_g_cmd_param_slot_2_view_spec_src_map: +@data(DF_CmdParamSlot) df_g_cmd_param_slot_2_view_spec_src_map: { - @expand(DF_CmdParamSlot2ViewSpecMap a) `DF_CmdParamSlot_$(a.slot),` + @expand(DF_CmdParamSlot2ViewSpecMap a) `DF_CmdParamSlot_$(a.slot)` } -@table_gen_data(type: String8, fallback:`{0}`) -df_g_cmd_param_slot_2_view_spec_dst_map: +@data(String8) df_g_cmd_param_slot_2_view_spec_dst_map: { - @expand(DF_CmdParamSlot2ViewSpecMap a) `str8_lit_comp("$(a.view_spec)"),` + @expand(DF_CmdParamSlot2ViewSpecMap a) `str8_lit_comp("$(a.view_spec)")` } -@table_gen_data(type: String8, fallback:`{0}`) -df_g_cmd_param_slot_2_view_spec_cmd_map: +@data(String8) df_g_cmd_param_slot_2_view_spec_cmd_map: { - @expand(DF_CmdParamSlot2ViewSpecMap a) `str8_lit_comp("$(a.opt_cmd_spec)"),` + @expand(DF_CmdParamSlot2ViewSpecMap a) `str8_lit_comp("$(a.opt_cmd_spec)")` } //- rjf: default bindings table -@table_gen_data(type: DF_StringBindingPair, fallback: `{0}`) -df_g_default_binding_table: +@data(DF_StringBindingPair) df_g_default_binding_table: { - @expand(DF_DefaultBindingTable a) ```{str8_lit_comp("$(a.name)"), {OS_Key_$(a.key), 0 $(a.ctrl != 0 -> `|OS_EventFlag_Ctrl`) $(a.shift != 0 -> `|OS_EventFlag_Shift`) $(a.alt != 0 -> `|OS_EventFlag_Alt`)}},```; + @expand(DF_DefaultBindingTable a) ```{str8_lit_comp("$(a.name)"), {OS_Key_$(a.key), 0 $(a.ctrl != 0 -> `|OS_EventFlag_Ctrl`) $(a.shift != 0 -> `|OS_EventFlag_Shift`) $(a.alt != 0 -> `|OS_EventFlag_Alt`)}}```; } //- rjf: binding version remap tables -@table_gen_data(type: String8, fallback: `{0}`) -df_g_binding_version_remap_old_name_table: +@data(String8) df_g_binding_version_remap_old_name_table: { - @expand(DF_BindingVersionRemapTable a) `str8_lit_comp("$(a.old_name)"),` + @expand(DF_BindingVersionRemapTable a) `str8_lit_comp("$(a.old_name)")` } -@table_gen_data(type: String8, fallback: `{0}`) -df_g_binding_version_remap_new_name_table: +@data(String8) df_g_binding_version_remap_new_name_table: { - @expand(DF_BindingVersionRemapTable a) `str8_lit_comp("$(a.new_name)"),` + @expand(DF_BindingVersionRemapTable a) `str8_lit_comp("$(a.new_name)")` } //- rjf: view hook forward declares @@ -561,33 +543,29 @@ df_g_binding_version_remap_new_name_table: //- rjf: gfx view rule tables -@table_gen_data(type: DF_GfxViewRuleSpecInfo, fallback: `{0}`) @c_file -df_g_gfx_view_rule_spec_info_table: +@data(DF_GfxViewRuleSpecInfo) @c_file df_g_gfx_view_rule_spec_info_table: { @expand(DF_GfxViewRuleTable a) - ```{ str8_lit_comp("$(a.string)"), (DF_GfxViewRuleSpecInfoFlag_VizRowProd*$(a.vr == "x"))|(DF_GfxViewRuleSpecInfoFlag_LineStringize*$(a.ls == "x"))|(DF_GfxViewRuleSpecInfoFlag_RowUI*$(a.ru == "x"))|(DF_GfxViewRuleSpecInfoFlag_BlockUI*$(a.bu == "x")), $(a.vr == "x" -> "DF_GFX_VIEW_RULE_VIZ_ROW_PROD_FUNCTION_NAME("..a.name_lower..")") $(a.vr != "x" -> 0), $(a.ls == "x" -> "DF_GFX_VIEW_RULE_LINE_STRINGIZE_FUNCTION_NAME("..a.name_lower..")") $(a.ls != "x" -> 0), $(a.ru == "x" -> "DF_GFX_VIEW_RULE_ROW_UI_FUNCTION_NAME("..a.name_lower..")") $(a.ru != "x" -> 0), $(a.bu == "x" -> "DF_GFX_VIEW_RULE_BLOCK_UI_FUNCTION_NAME("..a.name_lower..")") $(a.bu != "x" -> 0), },```; + ```{ str8_lit_comp("$(a.string)"), (DF_GfxViewRuleSpecInfoFlag_VizRowProd*$(a.vr == "x"))|(DF_GfxViewRuleSpecInfoFlag_LineStringize*$(a.ls == "x"))|(DF_GfxViewRuleSpecInfoFlag_RowUI*$(a.ru == "x"))|(DF_GfxViewRuleSpecInfoFlag_BlockUI*$(a.bu == "x")), $(a.vr == "x" -> "DF_GFX_VIEW_RULE_VIZ_ROW_PROD_FUNCTION_NAME("..a.name_lower..")") $(a.vr != "x" -> 0), $(a.ls == "x" -> "DF_GFX_VIEW_RULE_LINE_STRINGIZE_FUNCTION_NAME("..a.name_lower..")") $(a.ls != "x" -> 0), $(a.ru == "x" -> "DF_GFX_VIEW_RULE_ROW_UI_FUNCTION_NAME("..a.name_lower..")") $(a.ru != "x" -> 0), $(a.bu == "x" -> "DF_GFX_VIEW_RULE_BLOCK_UI_FUNCTION_NAME("..a.name_lower..")") $(a.bu != "x" -> 0), }```; } //- rjf: default view spec info table -@table_gen_data(type: DF_ViewSpecInfo, fallback: `{0}`) -df_g_gfx_view_kind_spec_info_table: +@data(DF_ViewSpecInfo) df_g_gfx_view_kind_spec_info_table: { - @expand(DF_GfxViewTable a) ```{(0|$(a.parameterized_by_entity)*DF_ViewSpecFlag_ParameterizedByEntity|$(a.can_serialize)*DF_ViewSpecFlag_CanSerialize|$(a.can_serialize_entity_path)*DF_ViewSpecFlag_CanSerializeEntityPath|$(a.can_filter)*DF_ViewSpecFlag_CanFilter|$(a.filter_is_code)*DF_ViewSpecFlag_FilterIsCode|$(a.typing_automatically_filters)*DF_ViewSpecFlag_TypingAutomaticallyFilters), str8_lit_comp("$(a.name_lower)"), str8_lit_comp("$(a.display_string)"), DF_NameKind_$(a.name_kind), DF_IconKind_$(a.icon), DF_VIEW_SETUP_FUNCTION_NAME($(a.name)), DF_VIEW_STRING_FROM_STATE_FUNCTION_NAME($(a.name)), DF_VIEW_CMD_FUNCTION_NAME($(a.name)), DF_VIEW_UI_FUNCTION_NAME($(a.name))},```; + @expand(DF_GfxViewTable a) ```{(0|$(a.parameterized_by_entity)*DF_ViewSpecFlag_ParameterizedByEntity|$(a.can_serialize)*DF_ViewSpecFlag_CanSerialize|$(a.can_serialize_entity_path)*DF_ViewSpecFlag_CanSerializeEntityPath|$(a.can_filter)*DF_ViewSpecFlag_CanFilter|$(a.filter_is_code)*DF_ViewSpecFlag_FilterIsCode|$(a.typing_automatically_filters)*DF_ViewSpecFlag_TypingAutomaticallyFilters), str8_lit_comp("$(a.name_lower)"), str8_lit_comp("$(a.display_string)"), DF_NameKind_$(a.name_kind), DF_IconKind_$(a.icon), DF_VIEW_SETUP_FUNCTION_NAME($(a.name)), DF_VIEW_STRING_FROM_STATE_FUNCTION_NAME($(a.name)), DF_VIEW_CMD_FUNCTION_NAME($(a.name)), DF_VIEW_UI_FUNCTION_NAME($(a.name))}```; } //- rjf: theme color tables -@table_gen_data(type: String8, fallback: `str8_lit_comp("")`) -df_g_theme_color_display_string_table: +@data(String8) df_g_theme_color_display_string_table: { - @expand(DF_ThemeTable a) `str8_lit_comp("$(a.display_name)"),`; + @expand(DF_ThemeTable a) `str8_lit_comp("$(a.display_name)")` } -@table_gen_data(type: String8, fallback: `str8_lit_comp("")`) -df_g_theme_color_cfg_string_table: +@data(String8) df_g_theme_color_cfg_string_table: { - @expand(DF_ThemeTable a) `str8_lit_comp("$(a.name_lower)"),`; + @expand(DF_ThemeTable a) `str8_lit_comp("$(a.name_lower)")` } //////////////////////////////// diff --git a/src/df/gfx/generated/df_gfx.meta.h b/src/df/gfx/generated/df_gfx.meta.h index ab8c3b8b..9976841a 100644 --- a/src/df/gfx/generated/df_gfx.meta.h +++ b/src/df/gfx/generated/df_gfx.meta.h @@ -786,7 +786,7 @@ rgba_from_u32_lit_comp(0x0000003f), rgba_from_u32_lit_comp(0x0000007f), }; -Vec4F32 * df_g_theme_preset_colors_table[] = +Vec4F32* df_g_theme_preset_colors_table[] = { df_g_theme_preset_colors__default_dark, df_g_theme_preset_colors__default_light, diff --git a/src/eval/eval.mdesk b/src/eval/eval.mdesk index 43656ef4..2c0daa5e 100644 --- a/src/eval/eval.mdesk +++ b/src/eval/eval.mdesk @@ -82,26 +82,23 @@ EVAL_ResultCodeTable: COUNT, } -@table_gen_data(type:U8, fallback:0) -eval_expr_kind_child_counts: +@data(U8) eval_expr_kind_child_counts: { - @expand(EVAL_ExprKindTable a) `$(a.num_children),`; + @expand(EVAL_ExprKindTable a) `$(a.num_children)` } -@table_gen_data(type:String8, fallback:`{0}`) +@data(String8) eval_expr_kind_strings: { - @expand(EVAL_ExprKindTable a) `str8_lit_comp("$(a.name)"),`; + @expand(EVAL_ExprKindTable a) `str8_lit_comp("$(a.name)")` } -@table_gen_data(type:String8, fallback:`{0}`) -eval_result_code_display_strings: +@data(String8) eval_result_code_display_strings: { - @expand(EVAL_ResultCodeTable a) `str8_lit_comp("$(a.display_string)"),`; + @expand(EVAL_ResultCodeTable a) `str8_lit_comp("$(a.display_string)")` } -@table_gen_data(type:String8, fallback:`{0}`) -eval_expr_op_strings: +@data(String8) eval_expr_op_strings: { - @expand(EVAL_ExprKindTable a) `str8_lit_comp("$(a.op_string)"),`; + @expand(EVAL_ExprKindTable a) `str8_lit_comp("$(a.op_string)")` } diff --git a/src/metagen/metagen_main.c b/src/metagen/metagen_main.c index 36e60cf7..d00d4403 100644 --- a/src/metagen/metagen_main.c +++ b/src/metagen/metagen_main.c @@ -215,21 +215,19 @@ int main(int argument_count, char **arguments) MD_Node *file = n->v.root; for(MD_EachNode(node, file->first)) { - MD_Node *tag = md_tag_from_string(node, str8_lit("table_gen_data"), 0); + MD_Node *tag = md_tag_from_string(node, str8_lit("data"), 0); if(!md_node_is_nil(tag)) { + String8 element_type = tag->first->string; String8 layer_key = mg_layer_key_from_path(file->string); MG_Layer *layer = mg_layer_from_key(layer_key); String8List *out = md_node_has_tag(node, str8_lit("c_file"), 0) ? &layer->c_tables : &layer->h_tables; - MD_Node *type = md_child_from_string(tag, str8_lit("type"), 0)->first; - MD_Node *fallback = md_child_from_string(tag, str8_lit("fallback"), 0)->first; - String8List gen_strings = mg_string_list_from_table_gen(mg_arena, table_grid_map, table_col_map, fallback->string, node); - str8_list_pushf(mg_arena, out, "%S %S[] =\n{\n", type->string, node->string); + String8List gen_strings = mg_string_list_from_table_gen(mg_arena, table_grid_map, table_col_map, str8_lit(""), node); + str8_list_pushf(mg_arena, out, "%S %S[] =\n{\n", element_type, node->string); for(String8Node *n = gen_strings.first; n != 0; n = n->next) { String8 escaped = mg_escaped_from_str8(mg_arena, n->string); - str8_list_push(mg_arena, out, escaped); - str8_list_push(mg_arena, out, str8_lit("\n")); + str8_list_pushf(mg_arena, out, "%S,\n", escaped); } str8_list_push(mg_arena, out, str8_lit("};\n\n")); } diff --git a/src/os/gfx/os_gfx.mdesk b/src/os/gfx/os_gfx.mdesk index 532efc51..bb399f3c 100644 --- a/src/os/gfx/os_gfx.mdesk +++ b/src/os/gfx/os_gfx.mdesk @@ -161,14 +161,12 @@ OS_KeyTable: COUNT, } -@table_gen_data(type: String8, fallback:`{0}`) -os_g_key_display_string_table: +@data(String8) os_g_key_display_string_table: { - @expand(OS_KeyTable a) `str8_lit_comp("$(a.display_string)"),`; + @expand(OS_KeyTable a) `str8_lit_comp("$(a.display_string)")`; } -@table_gen_data(type: String8, fallback:`{0}`) -os_g_key_cfg_string_table: +@data(String8) os_g_key_cfg_string_table: { - @expand(OS_KeyTable a) `str8_lit_comp("$(a.cfg_string)"),`; + @expand(OS_KeyTable a) `str8_lit_comp("$(a.cfg_string)")`; } diff --git a/src/regs/regs.mdesk b/src/regs/regs.mdesk index ea5fbb82..2a0499f6 100644 --- a/src/regs/regs.mdesk +++ b/src/regs/regs.mdesk @@ -318,46 +318,41 @@ REGS_ArchTable: @expand(REGS_RegTableX64 a) `REGS_Reg$(a.size) $(a.name)`, } -@table_gen_data(type:REGS_UsageKind, fallback:`REGS_UsageKind_Normal`) -regs_g_reg_code_x64_usage_kind_table: +@data(REGS_UsageKind) regs_g_reg_code_x64_usage_kind_table: { - `REGS_UsageKind_Normal,`; - @expand(REGS_RegTableX64 a) `REGS_UsageKind_$(a.usage),`; + `REGS_UsageKind_Normal`; + @expand(REGS_RegTableX64 a) `REGS_UsageKind_$(a.usage)`; } -@table_gen_data(type:REGS_UsageKind, fallback:`REGS_UsageKind_Normal`) +@data(REGS_UsageKind) regs_g_alias_code_x64_usage_kind_table: { - `REGS_UsageKind_Normal,`; - @expand(REGS_AliasTableX64 a) `REGS_UsageKind_$(a.usage),`; + `REGS_UsageKind_Normal`; + @expand(REGS_AliasTableX64 a) `REGS_UsageKind_$(a.usage)`; } -@table_gen_data(type:String8, fallback:`{0}`) -regs_g_reg_code_x64_string_table: +@data(String8) regs_g_reg_code_x64_string_table: { - `str8_lit_comp(""),`; - @expand(REGS_RegTableX64 a) `str8_lit_comp("$(a.name)"),`; + `str8_lit_comp("")`; + @expand(REGS_RegTableX64 a) `str8_lit_comp("$(a.name)")`; } -@table_gen_data(type:String8, fallback:`{0}`) -regs_g_alias_code_x64_string_table: +@data(String8) regs_g_alias_code_x64_string_table: { - `str8_lit_comp(""),`; - @expand(REGS_AliasTableX64 a) `str8_lit_comp("$(a.name)"),`; + `str8_lit_comp("")`; + @expand(REGS_AliasTableX64 a) `str8_lit_comp("$(a.name)")`; } -@table_gen_data(type: REGS_Rng, fallback: `{0}`) -regs_g_reg_code_x64_rng_table: +@data(REGS_Rng) regs_g_reg_code_x64_rng_table: { - `{0},`; - @expand(REGS_RegTableX64 a) `{(U16)OffsetOf(REGS_RegBlockX64, $(a.name)), $(a.size/8)},`, + `{0}`; + @expand(REGS_RegTableX64 a) `{(U16)OffsetOf(REGS_RegBlockX64, $(a.name)), $(a.size/8)}`, } -@table_gen_data(type: REGS_Slice, fallback: `{0}`) -regs_g_alias_code_x64_slice_table: +@data(REGS_Slice) regs_g_alias_code_x64_slice_table: { - `{0},`; - @expand(REGS_AliasTableX64 a) `{REGS_RegCodeX64_$(a.base), $(a.off/8), $(a.size/8)},`, + `{0}`; + @expand(REGS_AliasTableX64 a) `{REGS_RegCodeX64_$(a.base), $(a.off/8), $(a.size/8)}`, } //////////////////////////////// @@ -382,46 +377,41 @@ regs_g_alias_code_x64_slice_table: @expand(REGS_RegTableX86 a) `REGS_Reg$(a.size) $(a.name)`, } -@table_gen_data(type:REGS_UsageKind, fallback:`REGS_UsageKind_Normal`) +@data(REGS_UsageKind) regs_g_reg_code_x86_usage_kind_table: { - `REGS_UsageKind_Normal,`; - @expand(REGS_RegTableX86 a) `REGS_UsageKind_$(a.usage),`; + `REGS_UsageKind_Normal`; + @expand(REGS_RegTableX86 a) `REGS_UsageKind_$(a.usage)`; } -@table_gen_data(type:REGS_UsageKind, fallback:`REGS_UsageKind_Normal`) -regs_g_alias_code_x86_usage_kind_table: +@data(REGS_UsageKind) regs_g_alias_code_x86_usage_kind_table: { - `REGS_UsageKind_Normal,`; - @expand(REGS_AliasTableX86 a) `REGS_UsageKind_$(a.usage),`; + `REGS_UsageKind_Normal`; + @expand(REGS_AliasTableX86 a) `REGS_UsageKind_$(a.usage)`; } -@table_gen_data(type:String8, fallback:`{0}`) -regs_g_reg_code_x86_string_table: +@data(String8) regs_g_reg_code_x86_string_table: { - `str8_lit_comp(""),`; - @expand(REGS_RegTableX86 a) `str8_lit_comp("$(a.name)"),`; + `str8_lit_comp("")`; + @expand(REGS_RegTableX86 a) `str8_lit_comp("$(a.name)")`; } -@table_gen_data(type:String8, fallback:`{0}`) -regs_g_alias_code_x86_string_table: +@data(String8) regs_g_alias_code_x86_string_table: { - `str8_lit_comp(""),`; - @expand(REGS_AliasTableX86 a) `str8_lit_comp("$(a.name)"),`; + `str8_lit_comp("")`; + @expand(REGS_AliasTableX86 a) `str8_lit_comp("$(a.name)")`; } -@table_gen_data(type: REGS_Rng, fallback: `{0}`) -regs_g_reg_code_x86_rng_table: +@data(REGS_Rng) regs_g_reg_code_x86_rng_table: { - `{0},`; - @expand(REGS_RegTableX86 a) `{(U16)OffsetOf(REGS_RegBlockX86, $(a.name)), $(a.size/8)},`, + `{0}`; + @expand(REGS_RegTableX86 a) `{(U16)OffsetOf(REGS_RegBlockX86, $(a.name)), $(a.size/8)}`, } -@table_gen_data(type: REGS_Slice, fallback: `{0}`) -regs_g_alias_code_x86_slice_table: +@data(REGS_Slice) regs_g_alias_code_x86_slice_table: { - `{0},`; - @expand(REGS_AliasTableX86 a) `{REGS_RegCodeX86_$(a.base), $(a.off/8), $(a.size/8)},`, + `{0}`; + @expand(REGS_AliasTableX86 a) `{REGS_RegCodeX86_$(a.base), $(a.off/8), $(a.size/8)}`, } //////////////////////////////// diff --git a/src/render/d3d11/render_d3d11.mdesk b/src/render/d3d11/render_d3d11.mdesk index 99812ad9..ac7d953c 100644 --- a/src/render/d3d11/render_d3d11.mdesk +++ b/src/render/d3d11/render_d3d11.mdesk @@ -480,44 +480,44 @@ ps_main(Vertex2Pixel v2p) : SV_TARGET COUNT, } -@c_file @table_gen_data(type:String8, fallback:`{0}`) +@c_file @data(String8) r_d3d11_g_vshad_kind_source_table: { - @expand(R_D3D11_VShadTable a) `$(a.source),`; + @expand(R_D3D11_VShadTable a) `$(a.source)`; } -@c_file @table_gen_data(type:String8, fallback:`{0}`) +@c_file @data(String8) r_d3d11_g_vshad_kind_source_name_table: { - @expand(R_D3D11_VShadTable a) `str8_lit_comp("$(a.source)"),`; + @expand(R_D3D11_VShadTable a) `str8_lit_comp("$(a.source)")`; } -@c_file @table_gen_data(type:`D3D11_INPUT_ELEMENT_DESC *`, fallback:`0`) +@c_file @data(`D3D11_INPUT_ELEMENT_DESC *`) r_d3d11_g_vshad_kind_elements_ptr_table: { - @expand(R_D3D11_VShadTable a) `$(a.ilay_table),`; + @expand(R_D3D11_VShadTable a) `$(a.ilay_table)`; } -@c_file @table_gen_data(type:U64, fallback:`0`) +@c_file @data(U64) r_d3d11_g_vshad_kind_elements_count_table: { - @expand(R_D3D11_VShadTable a) `$(a.ilay_table != 0 -> "ArrayCount("..a.ilay_table..")") $(a.ilay_table == 0 -> "0"),`; + @expand(R_D3D11_VShadTable a) `$(a.ilay_table != 0 -> "ArrayCount("..a.ilay_table..")") $(a.ilay_table == 0 -> "0")`; } -@c_file @table_gen_data(type:String8, fallback:`{0}`) +@c_file @data(String8) r_d3d11_g_pshad_kind_source_table: { - @expand(R_D3D11_PShadTable a) `$(a.source),`; + @expand(R_D3D11_PShadTable a) `$(a.source)`; } -@c_file @table_gen_data(type:String8, fallback:`{0}`) +@c_file @data(String8) r_d3d11_g_pshad_kind_source_name_table: { - @expand(R_D3D11_PShadTable a) `str8_lit_comp("$(a.source)"),`; + @expand(R_D3D11_PShadTable a) `str8_lit_comp("$(a.source)")`; } -@c_file @table_gen_data(type:U64, fallback:`0`) +@c_file @data(U64) r_d3d11_g_uniform_type_kind_size_table: { - @expand(R_D3D11_UniformTypeTable a) `sizeof(R_D3D11_Uniforms_$(a.name)),`; + @expand(R_D3D11_UniformTypeTable a) `sizeof(R_D3D11_Uniforms_$(a.name))`; } diff --git a/src/render/render_core.mdesk b/src/render/render_core.mdesk index ce940922..ba3eff73 100644 --- a/src/render/render_core.mdesk +++ b/src/render/render_core.mdesk @@ -95,37 +95,37 @@ R_PassKindTable: COUNT, } -@table_gen_data(type:String8) r_tex2d_format_display_string_table: +@data(String8) r_tex2d_format_display_string_table: { - @expand(R_Tex2DFormatTable a) `str8_lit_comp("$(a.display_string)"),`; + @expand(R_Tex2DFormatTable a) `str8_lit_comp("$(a.display_string)")`; } -@table_gen_data(type:U8) r_tex2d_format_bytes_per_pixel_table: +@data(U8) r_tex2d_format_bytes_per_pixel_table: { - @expand(R_Tex2DFormatTable a) `$(a.bytes_per_pixel),`; + @expand(R_Tex2DFormatTable a) `$(a.bytes_per_pixel)`; } -@table_gen_data(type:String8) r_tex2d_kind_display_string_table: +@data(String8) r_tex2d_kind_display_string_table: { - @expand(R_Tex2DKindTable a) `str8_lit_comp("$(a.display_string)"),`; + @expand(R_Tex2DKindTable a) `str8_lit_comp("$(a.display_string)")`; } -@table_gen_data(type:String8) r_tex2d_sample_kind_display_string_table: +@data(String8) r_tex2d_sample_kind_display_string_table: { - @expand(R_Tex2DSampleKindTable a) `str8_lit_comp("$(a.display_string)"),`; + @expand(R_Tex2DSampleKindTable a) `str8_lit_comp("$(a.display_string)")`; } -@table_gen_data(type:String8) r_pass_kind_display_string_table: +@data(String8) r_pass_kind_display_string_table: { - @expand(R_PassKindTable a) `str8_lit_comp("$(a.display_string)"),`; + @expand(R_PassKindTable a) `str8_lit_comp("$(a.display_string)")`; } -@table_gen_data(type:U8) r_pass_kind_batch_table: +@data(U8) r_pass_kind_batch_table: { - @expand(R_PassKindTable a) `$(a.batch),`; + @expand(R_PassKindTable a) `$(a.batch)`; } -@table_gen_data(type:U64) @c_file r_pass_kind_params_size_table: +@data(U64) @c_file r_pass_kind_params_size_table: { - @expand(R_PassKindTable a) `sizeof(R_PassParams_$(a.name)),`; + @expand(R_PassKindTable a) `sizeof(R_PassParams_$(a.name))`; } diff --git a/src/type_graph/type_graph.mdesk b/src/type_graph/type_graph.mdesk index 7e9a0b83..ec342cdf 100644 --- a/src/type_graph/type_graph.mdesk +++ b/src/type_graph/type_graph.mdesk @@ -83,14 +83,12 @@ TG_KindTable: `LastIncomplete = TG_Kind_IncompleteEnum`, } -@table_gen_data(type:U8, fallback:0) -tg_kind_basic_byte_size_table: +@data(U8) tg_kind_basic_byte_size_table: { - @expand(TG_KindTable a) `$(a.basic_byte_size),`; + @expand(TG_KindTable a) `$(a.basic_byte_size)`; } -@table_gen_data(type:String8, fallback:`{0}`) -tg_kind_basic_string_table: +@data(String8) tg_kind_basic_string_table: { - @expand(TG_KindTable a) `str8_lit_comp("$(a.basic_string)"),`; + @expand(TG_KindTable a) `str8_lit_comp("$(a.basic_string)")`; }