--------------------------------------------------------------------------------
0 |
--------------------------------------------------------------------------------
1 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
2 | architecture RTL of FIFO is
<class 'vsg.token.architecture_body.architecture_keyword'>
<class 'vsg.token.architecture_body.identifier'>
<class 'vsg.token.architecture_body.of_keyword'>
<class 'vsg.token.architecture_body.entity_name'>
<class 'vsg.token.architecture_body.is_keyword'>
--------------------------------------------------------------------------------
3 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
4 | begin
<class 'vsg.token.architecture_body.begin_keyword'>
--------------------------------------------------------------------------------
5 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
6 |   LABEL0 : case a & b & c generate
<class 'vsg.token.case_generate_statement.generate_label'>
<class 'vsg.token.case_generate_statement.label_colon'>
<class 'vsg.token.case_generate_statement.case_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.token.adding_operator.concat'>
<class 'vsg.parser.todo'>
<class 'vsg.token.adding_operator.concat'>
<class 'vsg.parser.todo'>
<class 'vsg.token.case_generate_statement.generate_keyword'>
--------------------------------------------------------------------------------
7 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
8 |     when LABEL0_A : "000" =>
<class 'vsg.token.case_generate_alternative.when_keyword'>
<class 'vsg.token.case_generate_alternative.alternative_label_name'>
<class 'vsg.token.case_generate_alternative.alternative_label_colon'>
<class 'vsg.parser.todo'>
<class 'vsg.token.case_generate_alternative.assignment'>
--------------------------------------------------------------------------------
9 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
10 |     when LABEL0_B : "001" =>
<class 'vsg.token.case_generate_alternative.when_keyword'>
<class 'vsg.token.case_generate_alternative.alternative_label_name'>
<class 'vsg.token.case_generate_alternative.alternative_label_colon'>
<class 'vsg.parser.todo'>
<class 'vsg.token.case_generate_alternative.assignment'>
--------------------------------------------------------------------------------
11 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
12 |   end generate LABEL0;
<class 'vsg.token.case_generate_statement.end_keyword'>
<class 'vsg.token.case_generate_statement.end_generate_keyword'>
<class 'vsg.token.case_generate_statement.end_generate_label'>
<class 'vsg.token.case_generate_statement.semicolon'>
--------------------------------------------------------------------------------
13 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
14 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
15 |   -- Test nested case generates
<class 'vsg.parser.comment'>
--------------------------------------------------------------------------------
16 |   LABEL0 : case a & b & c generate
<class 'vsg.token.case_generate_statement.generate_label'>
<class 'vsg.token.case_generate_statement.label_colon'>
<class 'vsg.token.case_generate_statement.case_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.token.adding_operator.concat'>
<class 'vsg.parser.todo'>
<class 'vsg.token.adding_operator.concat'>
<class 'vsg.parser.todo'>
<class 'vsg.token.case_generate_statement.generate_keyword'>
--------------------------------------------------------------------------------
17 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
18 |     when "000" =>
<class 'vsg.token.case_generate_alternative.when_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.token.case_generate_alternative.assignment'>
--------------------------------------------------------------------------------
19 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
20 |       LABEL1 : case a & b & c generate
<class 'vsg.token.case_generate_statement.generate_label'>
<class 'vsg.token.case_generate_statement.label_colon'>
<class 'vsg.token.case_generate_statement.case_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.token.adding_operator.concat'>
<class 'vsg.parser.todo'>
<class 'vsg.token.adding_operator.concat'>
<class 'vsg.parser.todo'>
<class 'vsg.token.case_generate_statement.generate_keyword'>
--------------------------------------------------------------------------------
21 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
22 |         when "000" =>
<class 'vsg.token.case_generate_alternative.when_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.token.case_generate_alternative.assignment'>
--------------------------------------------------------------------------------
23 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
24 |         when "001" =>
<class 'vsg.token.case_generate_alternative.when_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.token.case_generate_alternative.assignment'>
--------------------------------------------------------------------------------
25 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
26 |       end generate LABEL1;
<class 'vsg.token.case_generate_statement.end_keyword'>
<class 'vsg.token.case_generate_statement.end_generate_keyword'>
<class 'vsg.token.case_generate_statement.end_generate_label'>
<class 'vsg.token.case_generate_statement.semicolon'>
--------------------------------------------------------------------------------
27 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
28 |     when "001" =>
<class 'vsg.token.case_generate_alternative.when_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.token.case_generate_alternative.assignment'>
--------------------------------------------------------------------------------
29 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
30 |   end generate LABEL0;
<class 'vsg.token.case_generate_statement.end_keyword'>
<class 'vsg.token.case_generate_statement.end_generate_keyword'>
<class 'vsg.token.case_generate_statement.end_generate_label'>
<class 'vsg.token.case_generate_statement.semicolon'>
--------------------------------------------------------------------------------
31 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
32 |   -- Test deeply nested case generates
<class 'vsg.parser.comment'>
--------------------------------------------------------------------------------
33 |   LABEL0 : case a & b & c generate
<class 'vsg.token.case_generate_statement.generate_label'>
<class 'vsg.token.case_generate_statement.label_colon'>
<class 'vsg.token.case_generate_statement.case_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.token.adding_operator.concat'>
<class 'vsg.parser.todo'>
<class 'vsg.token.adding_operator.concat'>
<class 'vsg.parser.todo'>
<class 'vsg.token.case_generate_statement.generate_keyword'>
--------------------------------------------------------------------------------
34 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
35 |     when "000" =>
<class 'vsg.token.case_generate_alternative.when_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.token.case_generate_alternative.assignment'>
--------------------------------------------------------------------------------
36 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
37 |       LABEL1A : case a & b & c generate
<class 'vsg.token.case_generate_statement.generate_label'>
<class 'vsg.token.case_generate_statement.label_colon'>
<class 'vsg.token.case_generate_statement.case_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.token.adding_operator.concat'>
<class 'vsg.parser.todo'>
<class 'vsg.token.adding_operator.concat'>
<class 'vsg.parser.todo'>
<class 'vsg.token.case_generate_statement.generate_keyword'>
--------------------------------------------------------------------------------
38 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
39 |         when "000" =>
<class 'vsg.token.case_generate_alternative.when_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.token.case_generate_alternative.assignment'>
--------------------------------------------------------------------------------
40 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
41 |           LABEL2A : case a & b & c generate
<class 'vsg.token.case_generate_statement.generate_label'>
<class 'vsg.token.case_generate_statement.label_colon'>
<class 'vsg.token.case_generate_statement.case_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.token.adding_operator.concat'>
<class 'vsg.parser.todo'>
<class 'vsg.token.adding_operator.concat'>
<class 'vsg.parser.todo'>
<class 'vsg.token.case_generate_statement.generate_keyword'>
--------------------------------------------------------------------------------
42 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
43 |             when "000" =>
<class 'vsg.token.case_generate_alternative.when_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.token.case_generate_alternative.assignment'>
--------------------------------------------------------------------------------
44 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
45 |             when "001" =>
<class 'vsg.token.case_generate_alternative.when_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.token.case_generate_alternative.assignment'>
--------------------------------------------------------------------------------
46 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
47 |               LABEL2A : case a & b & c generate
<class 'vsg.token.case_generate_statement.generate_label'>
<class 'vsg.token.case_generate_statement.label_colon'>
<class 'vsg.token.case_generate_statement.case_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.token.adding_operator.concat'>
<class 'vsg.parser.todo'>
<class 'vsg.token.adding_operator.concat'>
<class 'vsg.parser.todo'>
<class 'vsg.token.case_generate_statement.generate_keyword'>
--------------------------------------------------------------------------------
48 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
49 |                 when "000" =>
<class 'vsg.token.case_generate_alternative.when_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.token.case_generate_alternative.assignment'>
--------------------------------------------------------------------------------
50 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
51 |                 when "001" =>
<class 'vsg.token.case_generate_alternative.when_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.token.case_generate_alternative.assignment'>
--------------------------------------------------------------------------------
52 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
53 |               end generate LABEL2A;
<class 'vsg.token.case_generate_statement.end_keyword'>
<class 'vsg.token.case_generate_statement.end_generate_keyword'>
<class 'vsg.token.case_generate_statement.end_generate_label'>
<class 'vsg.token.case_generate_statement.semicolon'>
--------------------------------------------------------------------------------
54 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
55 |           end generate LABEL2A;
<class 'vsg.token.case_generate_statement.end_keyword'>
<class 'vsg.token.case_generate_statement.end_generate_keyword'>
<class 'vsg.token.case_generate_statement.end_generate_label'>
<class 'vsg.token.case_generate_statement.semicolon'>
--------------------------------------------------------------------------------
56 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
57 |         when "001" =>
<class 'vsg.token.case_generate_alternative.when_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.token.case_generate_alternative.assignment'>
--------------------------------------------------------------------------------
58 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
59 |       end generate LABEL1A;
<class 'vsg.token.case_generate_statement.end_keyword'>
<class 'vsg.token.case_generate_statement.end_generate_keyword'>
<class 'vsg.token.case_generate_statement.end_generate_label'>
<class 'vsg.token.case_generate_statement.semicolon'>
--------------------------------------------------------------------------------
60 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
61 |     when "001" =>
<class 'vsg.token.case_generate_alternative.when_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.token.case_generate_alternative.assignment'>
--------------------------------------------------------------------------------
62 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
63 |       LABEL1B : case a & b & c generate
<class 'vsg.token.case_generate_statement.generate_label'>
<class 'vsg.token.case_generate_statement.label_colon'>
<class 'vsg.token.case_generate_statement.case_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.token.adding_operator.concat'>
<class 'vsg.parser.todo'>
<class 'vsg.token.adding_operator.concat'>
<class 'vsg.parser.todo'>
<class 'vsg.token.case_generate_statement.generate_keyword'>
--------------------------------------------------------------------------------
64 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
65 |         when "000" =>
<class 'vsg.token.case_generate_alternative.when_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.token.case_generate_alternative.assignment'>
--------------------------------------------------------------------------------
66 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
67 |         when "001" =>
<class 'vsg.token.case_generate_alternative.when_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.token.case_generate_alternative.assignment'>
--------------------------------------------------------------------------------
68 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
69 |       end generate LABEL1B;
<class 'vsg.token.case_generate_statement.end_keyword'>
<class 'vsg.token.case_generate_statement.end_generate_keyword'>
<class 'vsg.token.case_generate_statement.end_generate_label'>
<class 'vsg.token.case_generate_statement.semicolon'>
--------------------------------------------------------------------------------
70 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
71 |   end generate LABEL0;
<class 'vsg.token.case_generate_statement.end_keyword'>
<class 'vsg.token.case_generate_statement.end_generate_keyword'>
<class 'vsg.token.case_generate_statement.end_generate_label'>
<class 'vsg.token.case_generate_statement.semicolon'>
--------------------------------------------------------------------------------
72 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
73 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
74 | end architecture RTL;
<class 'vsg.token.architecture_body.end_keyword'>
<class 'vsg.token.architecture_body.end_architecture_keyword'>
<class 'vsg.token.architecture_body.architecture_simple_name'>
<class 'vsg.token.architecture_body.semicolon'>
