mirror of
https://github.com/ZGCA-Forge/MsgCenterPy.git
synced 2026-02-04 21:35:13 +00:00
Add TypedDict Support (Experimental)
This commit is contained in:
@@ -9,6 +9,8 @@ class Properties(TypedDict, total=False):
|
||||
ros_msg_cls_path: str
|
||||
ros_msg_cls_namespace: str
|
||||
json_schema: Dict[str, Any]
|
||||
typed_dict_class_module: str
|
||||
typed_dict_class_name: str
|
||||
|
||||
|
||||
class FormatMetadata(TypedDict, total=False):
|
||||
|
||||
@@ -358,14 +358,14 @@ class TypeInfoProvider(ABC):
|
||||
|
||||
@abstractmethod
|
||||
def get_field_type_info(
|
||||
self, field_name: str, field_value: Any, field_accessor: "FieldAccessor"
|
||||
self, field_name: str, field_value: Any, parent_field_accessor: "FieldAccessor"
|
||||
) -> Optional[TypeInfo]:
|
||||
"""获取指定字段的类型信息
|
||||
|
||||
Args:
|
||||
field_name: 字段名,简单字段名如 'field'
|
||||
field_value: 字段的当前值,用于动态类型推断,不能为None
|
||||
field_accessor: 字段访问器,提供额外的上下文信息,不能为None
|
||||
parent_field_accessor: 父字段访问器,提供额外的上下文信息,不能为None
|
||||
|
||||
Returns:
|
||||
字段的TypeInfo,如果字段不存在则返回None
|
||||
|
||||
@@ -11,6 +11,7 @@ class MessageType(Enum):
|
||||
JSON_SCHEMA = "json_schema"
|
||||
DICT = "dict"
|
||||
YAML = "yaml"
|
||||
TYPED_DICT = "typed_dict" # Experimental
|
||||
|
||||
|
||||
class ConversionError(Exception):
|
||||
|
||||
Reference in New Issue
Block a user