mirror of
https://github.com/Ed94/raddebugger.git
synced 2026-06-14 16:12:24 -07:00
31 lines
3.0 KiB
Plaintext
31 lines
3.0 KiB
Plaintext
// Copyright (c) 2024 Epic Games Tools
|
|
// Licensed under the MIT license (https://opensource.org/license/mit/)
|
|
|
|
@table(coverage_check name name_lower string ih ex xp vb display_name docs schema description)
|
|
EV_ViewRuleTable:
|
|
{
|
|
{x Default default "default" - - - x "Default" - "" "" }
|
|
{x Array array "array" - - x - "Array" x "x:{expr}" "Specifies that a pointer points to N elements, rather than only 1." }
|
|
{x Slice slice "slice" - - x - "Slice" x "" "Specifies that a pointer within a struct, also containing an integer, points to the number of elements encoded by the integer." }
|
|
{x ByteSwap bswap "bswap" x - x - "Byte Swap" x "" "Specifies that all integral evaluations should be byte-swapped, such that their endianness is reversed." }
|
|
{x Cast cast "cast" - - x - "Cast" x "x:{type}" "Specifies that the expression to which the view rule is applied should be casted to the provided type." }
|
|
}
|
|
|
|
@enum EV_ViewRuleKind:
|
|
{
|
|
@expand(EV_ViewRuleTable a) `$(a.name)`,
|
|
COUNT,
|
|
}
|
|
|
|
@gen
|
|
{
|
|
@expand(EV_ViewRuleTable a) `$(a.xp == "x" -> "EV_VIEW_RULE_EXPR_RESOLUTION_FUNCTION_DEF(" .. a.name_lower .. ");")`;
|
|
@expand(EV_ViewRuleTable a) `$(a.vb == "x" -> "EV_VIEW_RULE_BLOCK_PROD_FUNCTION_DEF(" .. a.name_lower .. ");")`;
|
|
}
|
|
|
|
@data(EV_ViewRuleInfo) @c_file ev_builtin_view_rule_info_table:
|
|
{
|
|
@expand(EV_ViewRuleTable a)
|
|
```{str8_lit_comp("$(a.string)"), (EV_ViewRuleInfoFlag_Inherited*$(a.ih == "x"))|(EV_ViewRuleInfoFlag_Expandable*$(a.ex == "x"))|(EV_ViewRuleInfoFlag_ExprResolution*$(a.xp == "x"))|(EV_ViewRuleInfoFlag_VizBlockProd*$(a.vb == "x")), $(a.xp == "x" -> "EV_VIEW_RULE_EXPR_RESOLUTION_FUNCTION_NAME("..a.name_lower..")") $(a.xp != "x" -> 0), $(a.vb == "x" -> "EV_VIEW_RULE_BLOCK_PROD_FUNCTION_NAME("..a.name_lower..")") $(a.vb != "x" -> 0), }```;
|
|
}
|