Menu

#533 Update indenter to support indent of nested UVM macros

v1.0_(example)
open
nobody
None
5
2018-10-05
2018-10-02
StevenAZ
No

Found in 2.1.5

Discuss the possibility of indenting uvm macros that require indenting changes. Currently no indenting changes occur, but as shown in the code below, uvm_object_utils_begin/end should really change the indent depth.

~~~~~~~
`uvm_object_utils_begin (lab_tx_base)
`uvm_field_int (reset_n , UVM_NOCOMPARE)
`uvm_field_int (load_en , UVM_NOCOMPARE)
`uvm_field_int (read_pointer , UVM_NOCOMPARE)
`uvm_field_int (write_pointer, UVM_NOCOMPARE)
`uvm_object_utils_end

Discussion

  • StevenAZ

    StevenAZ - 2018-10-02
    • Description has changed:

    Diff:

    --- old
    +++ new
    @@ -2,10 +2,10 @@
    
     Discuss the possibility of indenting uvm macros that require indenting changes.  Currently no indenting changes occur, but as shown in the code below, uvm_object_utils_begin/end should really change the indent depth.
    
    -~~~
    
    -      `uvm_object_utils_begin (lab_tx_base)
    -      `uvm_field_int (reset_n      , UVM_NOCOMPARE)
    -      `uvm_field_int (load_en      , UVM_NOCOMPARE)
    -      `uvm_field_int (read_pointer , UVM_NOCOMPARE)
    -      `uvm_field_int (write_pointer, UVM_NOCOMPARE)
    -      `uvm_object_utils_end
    +~~~~~~~
    +      \`uvm_object_utils_begin (lab_tx_base)
    +      \`uvm_field_int (reset_n      , UVM_NOCOMPARE)
    +      \`uvm_field_int (load_en      , UVM_NOCOMPARE)
    +      \`uvm_field_int (read_pointer , UVM_NOCOMPARE)
    +      \`uvm_field_int (write_pointer, UVM_NOCOMPARE)
    +      \`uvm_object_utils_end
    
     
  • StevenAZ

    StevenAZ - 2018-10-05

    Found a list of UVM begin / end macros in case we get this far:

        // Begin keywords
        fUvmMacroBegin = new HashSet<String>();
        fUvmMacroBegin.add("\`uvm_field_utils_begin");
        fUvmMacroBegin.add("\`uvm_object_utils_begin");
        fUvmMacroBegin.add("\`uvm_object_param_utils_begin");
        fUvmMacroBegin.add("\`uvm_component_utils_begin");
        fUvmMacroBegin.add("\`uvm_component_param_utils_begin");
        // End keywords
        fUvmMacroEnd = new HashSet<String>();
        fUvmMacroEnd.add("\`uvm_field_utils_end");
        fUvmMacroEnd.add("\`uvm_object_utils_end");
        fUvmMacroEnd.add("\`uvm_object_param_utils_end");
        fUvmMacroEnd.add("\`uvm_component_utils_end");
        fUvmMacroEnd.add("\`uvm_component_param_utils_end");
    
     

Log in to post a comment.