raesl.compile.typechecking.compdef_design_builder#

Code for collecting and type checking designs.

Module Contents#

Classes#

CompDefDesignBuilder

Class for collecting and type checking designs in a component definition.

class raesl.compile.typechecking.compdef_design_builder.CompDefDesignBuilder(comp_child_builders: raesl.compile.typechecking.compdef_builder.CompDefChildBuilders)#

Class for collecting and type checking designs in a component definition.

new_design_header(kind: raesl.compile.scanner.Token)#

New design section started, store the kind stated in the header.

design_line(design: raesl.compile.ast.components.Design)#

New design rule found, store it.

add_design_subclause(sub: raesl.compile.ast.components.SubClause)#

Subclause of the last design has been found, append it to the last design.

finish_comp(comp_def: raesl.compile.ast.components.ComponentDefinition, _spec: raesl.compile.ast.specification.Specification)#

Check the found designs in the context of ‘comp_def’, and add them after verification.

Parameters:
  • comp_def – Surrounding component definition supplying variables and parameters. Checked designs should be added to it after checking.

  • _spec – Specification being constructed, source for types and verbs.