@@ -5,40 +5,50 @@ from rosidl_pycommon import convert_camel_case_to_lower_case_underscore
55action_name = ' _' + convert_camel_case_to_lower_case_underscore (action .namespaced_type .name )
66module_name = ' _' + convert_camel_case_to_lower_case_underscore (interface_path .stem )
77
8+ type_annotations_import_statements .add (f' from {".".join(action.namespaced_type.namespaces)}.{module_name} import {action.goal.structure.namespaced_type.name}' )
9+ type_annotations_import_statements .add (f' from {".".join(action.namespaced_type.namespaces)}.{module_name} import {action.result.structure.namespaced_type.name}' )
10+ type_annotations_import_statements .add (f' from {".".join(action.namespaced_type.namespaces)}.{module_name} import {action.feedback.structure.namespaced_type.name}' )
11+
812TEMPLATE (
913 ' _msg.py.em' ,
1014 package_name = package_name, interface_path = interface_path,
11- message = action .goal , import_statements = import_statements)
15+ message = action .goal , import_statements = import_statements,
16+ type_annotations_import_statements = type_annotations_import_statements)
1217TEMPLATE (
1318 ' _msg.py.em' ,
1419 package_name = package_name, interface_path = interface_path,
15- message = action .result , import_statements = import_statements)
20+ message = action .result , import_statements = import_statements,
21+ type_annotations_import_statements = type_annotations_import_statements)
1622TEMPLATE (
1723 ' _msg.py.em' ,
1824 package_name = package_name, interface_path = interface_path,
19- message = action .feedback , import_statements = import_statements)
25+ message = action .feedback , import_statements = import_statements,
26+ type_annotations_import_statements = type_annotations_import_statements)
2027TEMPLATE (
2128 ' _srv.py.em' ,
2229 package_name = package_name, interface_path = interface_path,
23- service = action .send_goal_service , import_statements = import_statements)
30+ service = action .send_goal_service , import_statements = import_statements,
31+ type_annotations_import_statements = type_annotations_import_statements)
2432TEMPLATE (
2533 ' _srv.py.em' ,
2634 package_name = package_name, interface_path = interface_path,
27- service = action .get_result_service , import_statements = import_statements)
35+ service = action .get_result_service , import_statements = import_statements,
36+ type_annotations_import_statements = type_annotations_import_statements)
2837TEMPLATE (
2938 ' _msg.py.em' ,
3039 package_name = package_name, interface_path = interface_path,
31- message = action .feedback_message , import_statements = import_statements)
40+ message = action .feedback_message , import_statements = import_statements,
41+ type_annotations_import_statements = type_annotations_import_statements)
3242}@
3343
3444
3545class Metaclass_ @ (action .namespaced_type .name )(type):
3646 """ Metaclass of action '@(action.namespaced_type.name)'."""
3747
38- _TYPE_SUPPORT = None
48+ _TYPE_SUPPORT : typing . ClassVar [ typing . Optional [PyCapsule]] = None
3949
4050 @@classmethod
41- def __import_type_support__ (cls):
51+ def __import_type_support__ (cls) -> None :
4252 try :
4353 from rosidl_generator_py import import_type_support
4454 module = import_type_support (' @(package_name)' )
@@ -92,5 +102,6 @@ class @(action.namespaced_type.name)(metaclass=Metaclass_@(action.namespaced_typ
92102 # The generic message for get the status of a goal.
93103 from action_msgs .msg ._goal_status_array import GoalStatusArray as GoalStatusMessage
94104
95- def __init__ (self):
105+ # type ignore below fixed in mypy 1.0+ see mypy#10342
106+ def __init__ (self) -> typing .NoReturn : # type: ignore
96107 raise NotImplementedError (' Action classes can not be instantiated' )
0 commit comments