generators.py
Go to the documentation of this file.
1 from ros_introspection.ros_generator import PRIMITIVES
2 
3 from .util import TRAILING_PATTERN, roscompile
4 
5 STANDARD = {
6  'Header': 'std_msgs'
7 }
8 
9 
10 @roscompile
12  all_names = set()
13  gens = list(package.get_all_generators())
14  for gen in gens:
15  all_names.add(gen.base_name)
16  for gen in gens:
17  for section in gen.sections:
18  for field in section.fields:
19  if '/' in field.type or field.type in PRIMITIVES:
20  continue
21 
22  if field.type in STANDARD:
23  field.type = STANDARD[field.type] + '/' + field.type
24  gen.changed = True
25  elif field.type in all_names:
26  field.type = package.name + '/' + field.type
27  gen.changed = True
28 
29 
30 @roscompile
32  for gen in package.get_all_generators():
33  for i, content in enumerate(gen.contents):
34  if not isinstance(content, str):
35  continue
36  m = TRAILING_PATTERN.match(content)
37  if m:
38  gen.contents[i] = m.group(1) + '\n'
roscompile.generators.remove_trailing_whitespace_from_generators
def remove_trailing_whitespace_from_generators(package)
Definition: generators.py:31
ros_introspection::ros_generator
roscompile.generators.fill_in_msg_package_names
def fill_in_msg_package_names(package)
Definition: generators.py:11


roscompile
Author(s):
autogenerated on Tue Jun 21 2022 03:01:39