peakrdl-python 2.0.0rc6__tar.gz → 2.1.0rc1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/.github/workflows/action.yaml +20 -9
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/PKG-INFO +11 -8
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/README.md +8 -6
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/docs/generated_package.rst +21 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/generate_and_test.py +4 -1
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/pyproject.toml +2 -1
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/__about__.py +2 -2
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/__peakrdl__.py +5 -1
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/class_names.py +0 -12
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/exporter.py +105 -91
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/systemrdl_node_hashes.py +196 -68
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/systemrdl_node_utility_functions.py +13 -6
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/templates/addrmap.py.jinja +3 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/templates/addrmap_memory.py.jinja +4 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/templates/addrmap_register.py.jinja +2 -4
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/templates/addrmap_tb.py.jinja +11 -15
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/templates/field_enums.py.jinja +2 -2
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/templates/template_ultilities.py.jinja +9 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/unique_component_iterator.py +140 -13
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python.egg-info/PKG-INFO +11 -8
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python.egg-info/requires.txt +1 -1
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/enum_example.rdl +7 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/unit_tests/test_export.py +39 -24
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/.gitignore +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/.readthedocs.yaml +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/LICENSE +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/MANIFEST.in +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/docs/api.rst +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/docs/api_components.rst +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/docs/command_line.rst +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/docs/conf.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/docs/customisation.rst +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/docs/design_decisions.rst +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/docs/design_tools.rst +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/docs/genindex.rst +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/docs/index.rst +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/docs/installation.rst +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/docs/requirements.txt +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/example/array_access/array_access.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/example/array_access/demo_array_access.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/example/enumerated_fields/demo_enumerated_fields.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/example/enumerated_fields/enumerated_fields.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/example/optimised_access/demo_optimised_access.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/example/optimised_access/demo_optimised_array_access.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/example/optimised_access/optimised_access.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/example/optimised_access/optimised_array_access.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/example/overridden_names/demo_over_ridden_names.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/example/overridden_names/overridden_names.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/example/simulating_callbacks/chip_with_a_GPIO.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/example/simulating_callbacks/flashing_the_LED.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/example/tranversing_address_map/chip_with_registers.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/example/tranversing_address_map/dumping_register_state_to_json_file.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/example/tranversing_address_map/reg_dump.json +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/example/tranversing_address_map/reseting_registers.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/example/tranversing_address_map/writing_register_state_from_json_file.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/example/user_defined_properties/demo_user_defined_properties.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/example/user_defined_properties/user_defined_properties.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/example/why_ral/__init__.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/example/why_ral/gpio.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/example/why_ral/with_hal.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/example/why_ral/with_ral.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/example/why_ral/without_ral.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/generate_testcases.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/setup.cfg +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/.coveragerc +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/__init__.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/_deploy_package.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/_node_walkers.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/compiler_udp.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/lib/__init__.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/lib/async_memory.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/lib/async_register_and_field.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/lib/base.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/lib/base_field.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/lib/base_register.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/lib/callbacks.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/lib/field_encoding.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/lib/memory.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/lib/py.typed +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/lib/register_and_field.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/lib/sections.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/lib/utility_functions.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/py.typed +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/safe_name_utility.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/sim_lib/__init__.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/sim_lib/_callbacks.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/sim_lib/base.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/sim_lib/dummy_callbacks.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/sim_lib/field.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/sim_lib/memory.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/sim_lib/py.typed +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/sim_lib/register.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/sim_lib/simulator.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/templates/__init__.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/templates/addrmap_field.py.jinja +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/templates/addrmap_simulation.py.jinja +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/templates/addrmap_simulation_tb.py.jinja +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/templates/addrmap_system_rdl_name_mapping.py.jinja +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/templates/addrmap_udp_property.py.jinja +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/templates/addrmap_universal_property.py.jinja +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/templates/baseclass_simulation_tb.py.jinja +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/templates/baseclass_tb.py.jinja +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/templates/child_definitions.py.jinja +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/templates/example.py.jinja +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/templates/header.py.jinja +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/templates/header_tb.py.jinja +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/templates/property_enums.py.jinja +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python/templates/reg_definitions.py.jinja +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python.egg-info/SOURCES.txt +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python.egg-info/dependency_links.txt +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python.egg-info/entry_points.txt +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/src/peakrdl_python.egg-info/top_level.txt +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/alternative_templates/header.py.jinja +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/alternative_templates/header_tb.py.jinja +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/alternative_templates_dynamic/header.py.jinja +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/alternative_templates_dynamic/header_tb.py.jinja +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/alternative_templates_dynamic_toml/header_check.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/alternative_templates_dynamic_toml/peakrdl.toml +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/alternative_templates_toml/header_check.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/alternative_templates_toml/peakrdl.toml +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/pathological_register_maps/pathalogical_rdl_builder.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/pathological_register_maps/templates/pathological_template.rdl.jinja +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/RDLFormatCode_example.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/addr_map.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/aliases.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/all_register_access_types.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/basic.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/block_a.xml +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/block_b.xml +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/deduplicated_field.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/different_array_types.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/example_issue_106.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/extended_memories.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/extended_sizes_registers_array.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/field_scope.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/field_with_overridden_reset.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/fields_with_HW_write.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/fields_with_reset_values.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/hidden_property.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/large_field_combinations.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/memories.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/memories_with_registers.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/msb0_and_lsb0.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/multi_block.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/multifile.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/name_clash.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/name_desc_all_levels.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/name_desc_option_deduplicate.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/overridden_python_name.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/parametrised_readonly_and_readwrite.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/parametrised_top.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/reg_name_stress.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/regfile_and_arrays.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/reserved_elements.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/same_but_different_enum.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/shared_register_issue_202 +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/signals_definitions_at_various_levels.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/simple.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/simple.xml +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/simulator_test.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/sizes_registers.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/sizes_registers_array.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/sparse_enum_issue_200.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/user_defined_properties.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/testcases/write_only_enum_with_undefined_reset.rdl +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/unit_tests/__init__.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/unit_tests/simple_components.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/unit_tests/test_array_indexing.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/unit_tests/test_building_inner_addrmap.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/unit_tests/test_field.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/unit_tests/test_name_desc_export.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/unit_tests/test_optimised_reg_array.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/unit_tests/test_reg.py +0 -0
- {peakrdl_python-2.0.0rc6 → peakrdl_python-2.1.0rc1}/tests/unit_tests/test_system_rdl_enum.py +0 -0
|
@@ -29,7 +29,7 @@ jobs:
|
|
|
29
29
|
- name: Set up Python
|
|
30
30
|
uses: actions/setup-python@v5
|
|
31
31
|
with:
|
|
32
|
-
python-version: "3.
|
|
32
|
+
python-version: "3.13"
|
|
33
33
|
|
|
34
34
|
- name: Install dependencies
|
|
35
35
|
run: |
|
|
@@ -54,7 +54,7 @@ jobs:
|
|
|
54
54
|
- name: Set up Python
|
|
55
55
|
uses: actions/setup-python@v5
|
|
56
56
|
with:
|
|
57
|
-
python-version: "3.
|
|
57
|
+
python-version: "3.13"
|
|
58
58
|
|
|
59
59
|
- name: Install dependencies
|
|
60
60
|
run: |
|
|
@@ -72,7 +72,7 @@ jobs:
|
|
|
72
72
|
runs-on: ubuntu-latest
|
|
73
73
|
strategy:
|
|
74
74
|
matrix:
|
|
75
|
-
python-version: [ 3.9, "3.10", "3.11", "3.12", "3.13" ]
|
|
75
|
+
python-version: [ 3.9, "3.10", "3.11", "3.12", "3.13", "3.14" ]
|
|
76
76
|
|
|
77
77
|
steps:
|
|
78
78
|
- uses: actions/checkout@v4
|
|
@@ -102,7 +102,7 @@ jobs:
|
|
|
102
102
|
runs-on: ubuntu-latest
|
|
103
103
|
strategy:
|
|
104
104
|
matrix:
|
|
105
|
-
python-version: [ 3.9, "3.10", "3.11", "3.12", "3.13" ]
|
|
105
|
+
python-version: [ 3.9, "3.10", "3.11", "3.12", "3.13", "3.14" ]
|
|
106
106
|
|
|
107
107
|
steps:
|
|
108
108
|
- uses: actions/checkout@v4
|
|
@@ -144,6 +144,8 @@ jobs:
|
|
|
144
144
|
python -m generate_and_test --RDL_source_file tests/testcases/user_defined_properties.rdl --root_node user_defined_properties --udp bool_property_to_include enum_property_to_include int_property_to_include
|
|
145
145
|
python -m generate_and_test --RDL_source_file tests/testcases/user_defined_properties.rdl --root_node user_defined_properties --udp bool_property_to_include enum_property_to_include int_property_to_include str_property_to_include
|
|
146
146
|
python -m generate_and_test --RDL_source_file tests/testcases/user_defined_properties.rdl --root_node user_defined_properties --udp bool_property_to_include enum_property_to_include int_property_to_include str_property_to_include struct_property_to_include double_layer_struct_property_to_include
|
|
147
|
+
|
|
148
|
+
python -m generate_and_test --RDL_source_file tests/testcases/user_defined_properties.rdl --root_node user_defined_properties --udp_regex "bool_property_to_include|enum_property_to_include|int_property_to_include|str_property_to_include|struct_property_to_include|double_layer_struct_property_to_include"
|
|
147
149
|
|
|
148
150
|
python -m generate_and_test --RDL_source_file tests/testcases/reserved_elements.rdl --root_node reserved_elements --hide_regex "(?:[\w_\[\]]+\.)+RSVD"
|
|
149
151
|
|
|
@@ -158,7 +160,7 @@ jobs:
|
|
|
158
160
|
runs-on: ubuntu-latest
|
|
159
161
|
strategy:
|
|
160
162
|
matrix:
|
|
161
|
-
python-version: [ 3.9, "3.10", "3.11", "3.12", "3.13" ]
|
|
163
|
+
python-version: [ 3.9, "3.10", "3.11", "3.12", "3.13", "3.14" ]
|
|
162
164
|
|
|
163
165
|
steps:
|
|
164
166
|
- uses: actions/checkout@v4
|
|
@@ -181,7 +183,8 @@ jobs:
|
|
|
181
183
|
peakrdl python tests/testcases/hidden_property.rdl -o peakrdl_out/raw/show_hidden/ --show_hidden
|
|
182
184
|
peakrdl python tests/testcases/simple.xml tests/testcases/multifile.rdl -o peakrdl_out/raw
|
|
183
185
|
peakrdl python tests/testcases/extended_memories.rdl -o peakrdl_out/raw/
|
|
184
|
-
peakrdl python tests/testcases/user_defined_properties.rdl -o peakrdl_out/raw/ --udp bool_property_to_include
|
|
186
|
+
peakrdl python tests/testcases/user_defined_properties.rdl -o peakrdl_out/raw/list/ --udp bool_property_to_include enum_property_to_include struct_property_to_include str_property_to_include
|
|
187
|
+
peakrdl python tests/testcases/user_defined_properties.rdl -o peakrdl_out/raw/regex/ --udp_regex "bool_property_to_include|enum_property_to_include|struct_property_to_include|str_property_to_include"
|
|
185
188
|
peakrdl python tests/testcases/reserved_elements.rdl -o peakrdl_out/raw/ --hide_regex "(?:[\w_\[\]]+\.)+RSVD"
|
|
186
189
|
peakrdl python tests/testcases/parametrised_top.rdl -o peakrdl_out/raw/ -P MY_PARAM=3
|
|
187
190
|
python -m unittest discover -s peakrdl_out/raw
|
|
@@ -259,6 +262,14 @@ jobs:
|
|
|
259
262
|
python -m with_hal
|
|
260
263
|
|
|
261
264
|
cd ../..
|
|
265
|
+
|
|
266
|
+
cd example/user_defined_properties/
|
|
267
|
+
peakrdl python user_defined_properties.rdl -o . --udp_regex "^(?!python_hide$)(?!python_name$).+"
|
|
268
|
+
python -m demo_user_defined_properties
|
|
269
|
+
|
|
270
|
+
cd ../..
|
|
271
|
+
|
|
272
|
+
|
|
262
273
|
|
|
263
274
|
integration_tests:
|
|
264
275
|
needs:
|
|
@@ -268,7 +279,7 @@ jobs:
|
|
|
268
279
|
runs-on: ubuntu-latest
|
|
269
280
|
strategy:
|
|
270
281
|
matrix:
|
|
271
|
-
python-version: [3.9, "3.10", "3.11", "3.12", "3.13"]
|
|
282
|
+
python-version: [3.9, "3.10", "3.11", "3.12", "3.13", "3.14"]
|
|
272
283
|
lib_copy: [true, false]
|
|
273
284
|
|
|
274
285
|
steps:
|
|
@@ -330,7 +341,7 @@ jobs:
|
|
|
330
341
|
runs-on: ubuntu-latest
|
|
331
342
|
strategy:
|
|
332
343
|
matrix:
|
|
333
|
-
python-version: [3.9, "3.10", "3.11", "3.12", "3.13"]
|
|
344
|
+
python-version: [3.9, "3.10", "3.11", "3.12", "3.13", "3.14"]
|
|
334
345
|
|
|
335
346
|
steps:
|
|
336
347
|
- uses: actions/checkout@v4
|
|
@@ -381,7 +392,7 @@ jobs:
|
|
|
381
392
|
- uses: actions/setup-python@v5
|
|
382
393
|
name: Install Python
|
|
383
394
|
with:
|
|
384
|
-
python-version: "3.
|
|
395
|
+
python-version: "3.13"
|
|
385
396
|
|
|
386
397
|
- name: Install dependencies
|
|
387
398
|
run: |
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: peakrdl-python
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.1.0rc1
|
|
4
4
|
Summary: Generate Python Register Access Layer (RAL) from SystemRDL
|
|
5
5
|
Author: Keith Brady
|
|
6
6
|
License: GNU GENERAL PUBLIC LICENSE
|
|
@@ -691,6 +691,7 @@ Classifier: Programming Language :: Python :: 3.10
|
|
|
691
691
|
Classifier: Programming Language :: Python :: 3.11
|
|
692
692
|
Classifier: Programming Language :: Python :: 3.12
|
|
693
693
|
Classifier: Programming Language :: Python :: 3.13
|
|
694
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
694
695
|
Classifier: Programming Language :: Python :: 3 :: Only
|
|
695
696
|
Classifier: Intended Audience :: Developers
|
|
696
697
|
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
|
|
@@ -708,7 +709,7 @@ Provides-Extra: dev
|
|
|
708
709
|
Requires-Dist: mypy; extra == "dev"
|
|
709
710
|
Requires-Dist: pylint; extra == "dev"
|
|
710
711
|
Requires-Dist: coverage; extra == "dev"
|
|
711
|
-
Requires-Dist: peakrdl
|
|
712
|
+
Requires-Dist: peakrdl; extra == "dev"
|
|
712
713
|
Provides-Extra: peakrdl
|
|
713
714
|
Requires-Dist: peakrdl; extra == "peakrdl"
|
|
714
715
|
Provides-Extra: unit-test
|
|
@@ -717,6 +718,8 @@ Requires-Dist: tomli; python_version < "3.11" and extra == "unit-test"
|
|
|
717
718
|
Dynamic: license-file
|
|
718
719
|
|
|
719
720
|

|
|
721
|
+
[](https://github.com/pylint-dev/pylint)
|
|
722
|
+
[](http://mypy-lang.org/)
|
|
720
723
|
[](https://pypi.org/project/peakrdl-python)
|
|
721
724
|
[](https://peakrdl-python.readthedocs.io/en/latest/?badge=latest)
|
|
722
725
|
[](https://pepy.tech/project/peakrdl-python)
|
|
@@ -742,7 +745,7 @@ See the [peakrdl-python Documentation](https://peakrdl-python.readthedocs.io/) f
|
|
|
742
745
|
python3 -m pip install peakrdl
|
|
743
746
|
```
|
|
744
747
|
|
|
745
|
-
###
|
|
748
|
+
### Demo
|
|
746
749
|
|
|
747
750
|
This demonstration relies on downloading the systemRDL example from Accelera, available here: [accelera-generic_example.rdl](https://github.com/SystemRDL/systemrdl-compiler/blob/main/examples/accelera-generic_example.rdl). This demonstration also
|
|
748
751
|
assumes that peakrdl has been installed.
|
|
@@ -789,11 +792,11 @@ assumes that peakrdl has been installed.
|
|
|
789
792
|
# Usage
|
|
790
793
|
|
|
791
794
|
To make use of the RAL with real hardware or a different simulation, the callbacks will need to be
|
|
792
|
-
connected to the appropriate access function
|
|
795
|
+
connected to the appropriate access function in order to perform an address space reads and writes
|
|
793
796
|
|
|
794
|
-
|
|
797
|
+
# Upgrading from previous versions (some important changes)
|
|
795
798
|
|
|
796
|
-
|
|
799
|
+
## Upgrading from pre 0.9.0
|
|
797
800
|
|
|
798
801
|
In order to address a major limitation of peakrdl-python that prevented it from implementing the
|
|
799
802
|
full systemRDL specification, a breaking API change was needed for handling blocks:
|
|
@@ -804,7 +807,7 @@ Users are encouraged to upgrade in order to avoid this limitation. However, ther
|
|
|
804
807
|
to support users with existing designs, see: _Legacy Block Callback and Block Access_ in the
|
|
805
808
|
documentation
|
|
806
809
|
|
|
807
|
-
|
|
810
|
+
## Upgrading from pre 1.2.0
|
|
808
811
|
|
|
809
812
|
Version 1.2 introduced a new way to define the enumerations for the field encoding. This allows
|
|
810
813
|
metadata from the systemRDL to propagate through to the generated code. This may break advanced
|
|
@@ -812,7 +815,7 @@ usage of the python enumerations. User are encouraged to use the new feature, ho
|
|
|
812
815
|
are problems with the old enumeration types (based on `IntEnum`) can be used, see
|
|
813
816
|
_Legacy Enumeration Types_ in the documentation
|
|
814
817
|
|
|
815
|
-
|
|
818
|
+
## Upgrading from pre 2.0.0
|
|
816
819
|
|
|
817
820
|
Version 2.0 introduced a significant change to the process for building the register model python
|
|
818
821
|
code. This change was intended to reduce the size of the generated code by only generating
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|

|
|
2
|
+
[](https://github.com/pylint-dev/pylint)
|
|
3
|
+
[](http://mypy-lang.org/)
|
|
2
4
|
[](https://pypi.org/project/peakrdl-python)
|
|
3
5
|
[](https://peakrdl-python.readthedocs.io/en/latest/?badge=latest)
|
|
4
6
|
[](https://pepy.tech/project/peakrdl-python)
|
|
@@ -24,7 +26,7 @@ See the [peakrdl-python Documentation](https://peakrdl-python.readthedocs.io/) f
|
|
|
24
26
|
python3 -m pip install peakrdl
|
|
25
27
|
```
|
|
26
28
|
|
|
27
|
-
###
|
|
29
|
+
### Demo
|
|
28
30
|
|
|
29
31
|
This demonstration relies on downloading the systemRDL example from Accelera, available here: [accelera-generic_example.rdl](https://github.com/SystemRDL/systemrdl-compiler/blob/main/examples/accelera-generic_example.rdl). This demonstration also
|
|
30
32
|
assumes that peakrdl has been installed.
|
|
@@ -71,11 +73,11 @@ assumes that peakrdl has been installed.
|
|
|
71
73
|
# Usage
|
|
72
74
|
|
|
73
75
|
To make use of the RAL with real hardware or a different simulation, the callbacks will need to be
|
|
74
|
-
connected to the appropriate access function
|
|
76
|
+
connected to the appropriate access function in order to perform an address space reads and writes
|
|
75
77
|
|
|
76
|
-
|
|
78
|
+
# Upgrading from previous versions (some important changes)
|
|
77
79
|
|
|
78
|
-
|
|
80
|
+
## Upgrading from pre 0.9.0
|
|
79
81
|
|
|
80
82
|
In order to address a major limitation of peakrdl-python that prevented it from implementing the
|
|
81
83
|
full systemRDL specification, a breaking API change was needed for handling blocks:
|
|
@@ -86,7 +88,7 @@ Users are encouraged to upgrade in order to avoid this limitation. However, ther
|
|
|
86
88
|
to support users with existing designs, see: _Legacy Block Callback and Block Access_ in the
|
|
87
89
|
documentation
|
|
88
90
|
|
|
89
|
-
|
|
91
|
+
## Upgrading from pre 1.2.0
|
|
90
92
|
|
|
91
93
|
Version 1.2 introduced a new way to define the enumerations for the field encoding. This allows
|
|
92
94
|
metadata from the systemRDL to propagate through to the generated code. This may break advanced
|
|
@@ -94,7 +96,7 @@ usage of the python enumerations. User are encouraged to use the new feature, ho
|
|
|
94
96
|
are problems with the old enumeration types (based on `IntEnum`) can be used, see
|
|
95
97
|
_Legacy Enumeration Types_ in the documentation
|
|
96
98
|
|
|
97
|
-
|
|
99
|
+
## Upgrading from pre 2.0.0
|
|
98
100
|
|
|
99
101
|
Version 2.0 introduced a significant change to the process for building the register model python
|
|
100
102
|
code. This change was intended to reduce the size of the generated code by only generating
|
|
@@ -418,6 +418,11 @@ Exposing User Defined Properties
|
|
|
418
418
|
SystemRDL allows properties to be added to any component (Field, Memory, Register, Register File,
|
|
419
419
|
Address Map), so called *User Defined Properties (UDP)*.
|
|
420
420
|
|
|
421
|
+
There are two methods to expose user defined properties:
|
|
422
|
+
|
|
423
|
+
- A list of strings to include in the package
|
|
424
|
+
- A Regular Expression which will include any UDP which matches the regular expression
|
|
425
|
+
|
|
421
426
|
Consider the following systemRDL example with a user defined property: ``component_usage``
|
|
422
427
|
|
|
423
428
|
.. literalinclude :: ../example/user_defined_properties/user_defined_properties.rdl
|
|
@@ -429,12 +434,28 @@ User Defined Properties are not automatically included they must be specified, a
|
|
|
429
434
|
|
|
430
435
|
peakrdl python user_defined_properties.rdl -o . --udp component_usage
|
|
431
436
|
|
|
437
|
+
Alternatively the User Defined Properties can be included with a regular expression.
|
|
438
|
+
In the following case all UDPs are included, except the ones used by PeakRDL python
|
|
439
|
+
|
|
440
|
+
.. code-block:: bash
|
|
441
|
+
|
|
442
|
+
peakrdl python user_defined_properties.rdl -o . --udp_regex "^(?!python_hide$)(?!python_name$).+"
|
|
443
|
+
|
|
444
|
+
.. warning::
|
|
445
|
+
|
|
446
|
+
Attempting to use both the list and regular expression approach is not supported and will
|
|
447
|
+
generate an error
|
|
448
|
+
|
|
432
449
|
The user defined properties are stored in a ``udp`` property of all component in the generated
|
|
433
450
|
register access and can be accessed as follows:
|
|
434
451
|
|
|
435
452
|
.. literalinclude :: ../example/user_defined_properties/demo_user_defined_properties.py
|
|
436
453
|
:language: python
|
|
437
454
|
|
|
455
|
+
.. versionadded:: 2.0.0
|
|
456
|
+
|
|
457
|
+
Regular Expression matching for User Defined Properties was added in version 2.0.0
|
|
458
|
+
|
|
438
459
|
Python Safe Names
|
|
439
460
|
=================
|
|
440
461
|
|
|
@@ -81,9 +81,12 @@ CommandLineParser.add_argument('--legacy_block_access', action='store_true',
|
|
|
81
81
|
dest='legacy_block_access',
|
|
82
82
|
help='peakrdl python has two methods to hold blocks of data, the '
|
|
83
83
|
'legacy mode based on Array or the new mode using lists')
|
|
84
|
-
CommandLineParser.
|
|
84
|
+
udp_group = CommandLineParser.add_mutually_exclusive_group(required=False)
|
|
85
|
+
udp_group.add_argument('--udp', dest='udp', nargs='*',
|
|
85
86
|
type=str, help='any user defined properties to include in the '
|
|
86
87
|
'reg_model')
|
|
88
|
+
udp_group.add_argument('--udp_regex', dest='udp_regex', type=str,
|
|
89
|
+
help='a regex to define which UPD ares show in the reg model')
|
|
87
90
|
CommandLineParser.add_argument('--hide_regex', dest='hide_regex', type=str,
|
|
88
91
|
help='A regex that will cause any matching fully qualified node to '
|
|
89
92
|
'be hidden')
|
|
@@ -34,6 +34,7 @@ classifiers = [
|
|
|
34
34
|
"Programming Language :: Python :: 3.11",
|
|
35
35
|
"Programming Language :: Python :: 3.12",
|
|
36
36
|
"Programming Language :: Python :: 3.13",
|
|
37
|
+
"Programming Language :: Python :: 3.14",
|
|
37
38
|
"Programming Language :: Python :: 3 :: Only",
|
|
38
39
|
"Intended Audience :: Developers",
|
|
39
40
|
"License :: OSI Approved :: GNU General Public License v3 (GPLv3)",
|
|
@@ -62,7 +63,7 @@ dev = [
|
|
|
62
63
|
"mypy",
|
|
63
64
|
"pylint",
|
|
64
65
|
"coverage",
|
|
65
|
-
"peakrdl
|
|
66
|
+
"peakrdl"
|
|
66
67
|
]
|
|
67
68
|
peakrdl = [
|
|
68
69
|
"peakrdl"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"""
|
|
2
2
|
peakrdl-python is a tool to generate Python Register Access Layer (RAL) from SystemRDL
|
|
3
|
-
Copyright (C) 2021 -
|
|
3
|
+
Copyright (C) 2021 - 2023
|
|
4
4
|
|
|
5
5
|
This program is free software: you can redistribute it and/or modify
|
|
6
6
|
it under the terms of the GNU General Public License as published by
|
|
@@ -17,4 +17,4 @@ along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
|
17
17
|
|
|
18
18
|
Variables that describes the peakrdl-python Package
|
|
19
19
|
"""
|
|
20
|
-
__version__ = "2.
|
|
20
|
+
__version__ = "2.1.0rc1"
|
|
@@ -85,8 +85,11 @@ class Exporter(ExporterSubcommandPlugin):
|
|
|
85
85
|
help='show addrmap, regfile, memory, register and fields that '
|
|
86
86
|
'have been given the python_hide user defined property and '
|
|
87
87
|
'would be removed from the build python by default')
|
|
88
|
-
arg_group.
|
|
88
|
+
udp_group = arg_group.add_mutually_exclusive_group(required=False)
|
|
89
|
+
udp_group.add_argument('--udp', dest='udp', nargs='*', type=str,
|
|
89
90
|
help='any user defined properties to include in the reg_model')
|
|
91
|
+
udp_group.add_argument('--udp_regex', dest='udp_regex', type=str,
|
|
92
|
+
help='a regex to define which UPD ares show in the reg model')
|
|
90
93
|
arg_group.add_argument('--hide_regex', dest='hide_regex', type=str,
|
|
91
94
|
help='A regex that will cause any matching fully qualified node to '
|
|
92
95
|
'be hidden')
|
|
@@ -172,6 +175,7 @@ class Exporter(ExporterSubcommandPlugin):
|
|
|
172
175
|
legacy_block_access=options.legacy_block_access,
|
|
173
176
|
show_hidden=options.show_hidden,
|
|
174
177
|
user_defined_properties_to_include=options.udp,
|
|
178
|
+
user_defined_properties_to_include_regex=options.udp_regex,
|
|
175
179
|
hidden_inst_name_regex=options.hide_regex,
|
|
176
180
|
skip_library_copy=options.skip_library_copy,
|
|
177
181
|
legacy_enum_type=options.legacy_enum_type,
|
|
@@ -21,9 +21,7 @@ from systemrdl.node import Node
|
|
|
21
21
|
from systemrdl.node import FieldNode
|
|
22
22
|
from systemrdl.node import RegNode
|
|
23
23
|
from systemrdl.node import MemNode
|
|
24
|
-
from systemrdl.rdltypes.user_enum import UserEnumMeta
|
|
25
24
|
from .systemrdl_node_utility_functions import is_encoded_field
|
|
26
|
-
from .systemrdl_node_hashes import enum_hash
|
|
27
25
|
|
|
28
26
|
def get_field_get_base_class_name(node: FieldNode, async_library_classes: bool) -> str:
|
|
29
27
|
"""
|
|
@@ -105,13 +103,3 @@ def get_base_class_name(node: Node, async_library_classes: bool) -> str:
|
|
|
105
103
|
return __get_mem_get_base_class_name(node, async_library_classes=async_library_classes)
|
|
106
104
|
|
|
107
105
|
raise TypeError(f'Unhandled node type: {type(node)}')
|
|
108
|
-
|
|
109
|
-
def fully_qualified_enum_type(field_enum: UserEnumMeta) -> str:
|
|
110
|
-
"""
|
|
111
|
-
Returns the fully qualified class type name, for an enum
|
|
112
|
-
"""
|
|
113
|
-
enum_hash_value = enum_hash(field_enum)
|
|
114
|
-
full_scope_path = field_enum.get_scope_path('_')
|
|
115
|
-
if enum_hash_value < 0:
|
|
116
|
-
return full_scope_path + '_' + field_enum.type_name + '_neg_' + hex(-enum_hash_value)
|
|
117
|
-
return full_scope_path + '_' + field_enum.type_name + hex(enum_hash_value)
|