parameters: (toolset, base, prohibited_properties = [])
docstring: Brings all flag definitions from the 'base' toolset into the 'toolset'
      toolset. Flag definitions whose conditions make use of properties in
      'prohibited-properties' are ignored. Don't confuse property and feature, for
      example <debug-symbols>on and <debug-symbols>off, so blocking one of them does
      not block the other one.
  
      The flag conditions are not altered at all, so if a condition includes a name,
      or version of a base toolset, it won't ever match the inheriting toolset. When
      such flag settings must be inherited, define a rule in base toolset module and
      call it as needed.
docstring_summary: Brings all flag definitions from the 'base' toolset into the 'toolset'
      toolset. Flag definitions whose conditions make use of properties in
      'prohibited-properties' are ignored. Don't confuse property and feature, for
      example <debug-symbols>on and <debug-symbols>off, so blocking one of them does
      not block the other one.
docstring_tokens: Brings all flag definitions from the base toolset into the toolset toolset . Flag definitions whose conditions make use of properties in prohibited - properties are ignored . Don t confuse property and feature for example <debug - symbols > on and <debug - symbols > off so blocking one of them does not block the other one .
function: def inherit_flags(toolset, base, prohibited_properties = []):
      """Brings all flag definitions from the 'base' toolset into the 'toolset'
      toolset. Flag definitions whose conditions make use of properties in
      'prohibited-properties' are ignored. Don't confuse property and feature, for
      example <debug-symbols>on and <debug-symbols>off, so blocking one of them does
      not block the other one.
  
      The flag conditions are not altered at all, so if a condition includes a name,
      or version of a base toolset, it won't ever match the inheriting toolset. When
      such flag settings must be inherited, define a rule in base toolset module and
      call it as needed."""
      assert isinstance(toolset, basestring)
      assert isinstance(base, basestring)
      assert is_iterable_typed(prohibited_properties, basestring)
      for f in __module_flags.get(base, []):
  
          if not f.condition or b2.util.set.difference(f.condition, prohibited_properties):
              match = __re_first_group.match(f.rule)
              rule_ = None
              if match:
                  rule_ = match.group(1)
  
              new_rule_or_module = ''
  
              if rule_:
                  new_rule_or_module = toolset + '.' + rule_
              else:
                  new_rule_or_module = toolset
  
              __add_flag (new_rule_or_module, f.variable_name, f.condition, f.values)
function_tokens: def inherit_flags ( toolset , base , prohibited_properties = [ ] ) : assert isinstance ( toolset , basestring ) assert isinstance ( base , basestring ) assert is_iterable_typed ( prohibited_properties , basestring ) for f in __module_flags . get ( base , [ ] ) : if not f . condition or b2 . util . set . difference ( f . condition , prohibited_properties ) : match = __re_first_group . match ( f . rule ) rule_ = None if match : rule_ = match . group ( 1 ) new_rule_or_module = '' if rule_ : new_rule_or_module = toolset + '.' + rule_ else : new_rule_or_module = toolset __add_flag ( new_rule_or_module , f . variable_name , f . condition , f . values )