Source code for ifgen.svd.model.address_block

"""
A module implementing a data model for ARM CMSIS-SVD 'addressBlock' data.
"""

# built-in
from dataclasses import dataclass
from typing import Iterable

# internal
from ifgen.svd.string import StringKeyVal, StringKeyValueMixin


[docs] @dataclass class AddressBlock(StringKeyValueMixin): """A container for address-block information."""
[docs] @classmethod def string_keys(cls) -> Iterable[StringKeyVal]: """Get string keys for this instance type.""" return [ StringKeyVal("offset", True), StringKeyVal("size", True), StringKeyVal("usage", True), # registers, buffer, reserved StringKeyVal("protection", False), ]