diff --git a/unoptimized_lr/simple_parser_buses.py b/unoptimized_lr/simple_parser_buses.py index baab9117415c3a4a7a14773fb38510b4dfd09833..5a734ade7d6db9d0067528ddeef389bb5e46ae3d 100644 --- a/unoptimized_lr/simple_parser_buses.py +++ b/unoptimized_lr/simple_parser_buses.py @@ -47,7 +47,7 @@ class ParametrizationConstants(): self.W_serialized_parse_tree = max(W_Nonterminal, W_max_RHS, 1 + W_Terminal, 1+ W_parsetree_index) -class LR_automaton_internal(Layout): +class LR_automaton_internal_layout(Layout): def __init__(self, *, parameters): interfaces = [ # TABLES @@ -63,7 +63,11 @@ class LR_automaton_internal(Layout): super().__init__(interfaces) -class InputStream(Layout): +class LR_automaton_internal(Record): + def __init__(self, *, parameters): + super().__init__(LR_automaton_internal_layout(parameters=parameters)) + +class InputStream_layout(Layout): def __init__(self, *, parameters): input_width = parameters.W_terminal super().__init__([ @@ -78,8 +82,12 @@ class InputStream(Layout): ]) +class InputStream(Record): + def __init__(self, *, parameters): + super().__init__(InputStream_layout(parameters=parameters)) -class Sideband(Layout): + +class Sideband_layout(Layout): def __init__(self, *, parameters): super().__init__([ # INPUTS @@ -92,8 +100,12 @@ class Sideband(Layout): ("parser_fault", 1), # TO DEST ]) +class Sideband(Record): + def __init__(self, *, parameters): + super().__init__(Sideband_layout(parameters=parameters)) + -class Serializer(Layout): +class Serializer_layout(Layout): def __init__(self, *, parameters): super().__init__([ # INPUTS @@ -111,7 +123,12 @@ class Serializer(Layout): ]) -class LR_automaton_external(Layout): +class Serializer(Record): + def __init__(self, *, parameters): + super().__init__(Serializer_layout(parameters=parameters)) + + +class LR_automaton_external_layout(Layout): def __init__(self, *, parameters): interfaces = [ # INPUT @@ -124,6 +141,9 @@ class LR_automaton_external(Layout): interfaces.append(("serialization_bus", Serializer(parameters=parameters))) super().__init__(interfaces) +class LR_automaton_external(Record): + def __init__(self, *, parameters): + super().__init__(LR_automaton_external_layout(parameters=parameters)) class StackLayout(Layout):