--------------------------------------------------------------------------------
0 |
--------------------------------------------------------------------------------
1 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
2 | architecture RTL of ENTITY_NAME 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 |   function func1 return integer is
<class 'vsg.token.function_specification.function_keyword'>
<class 'vsg.token.function_specification.designator'>
<class 'vsg.token.function_specification.return_keyword'>
<class 'vsg.token.ieee.std_logic_1164.types.integer'>
<class 'vsg.token.subprogram_body.is_keyword'>
--------------------------------------------------------------------------------
5 |   begin
<class 'vsg.token.subprogram_body.begin_keyword'>
--------------------------------------------------------------------------------
6 |     hpp := '1'  when (pf_vlan2x_tci(3 downto 0) >= x"A" and pf_vlan2x_tci(3 downto 0) <= x"F") else '0';
<class 'vsg.token.conditional_variable_assignment.target'>
<class 'vsg.token.conditional_variable_assignment.assignment'>
<class 'vsg.parser.character_literal'>
<class 'vsg.token.conditional_expressions.when_keyword'>
<class 'vsg.parser.open_parenthesis'>
<class 'vsg.token.todo.name'>
<class 'vsg.token.todo.open_parenthesis'>
<class 'vsg.parser.todo'>
<class 'vsg.token.direction.downto'>
<class 'vsg.parser.todo'>
<class 'vsg.token.todo.close_parenthesis'>
<class 'vsg.token.relational_operator.greater_than_or_equal'>
<class 'vsg.parser.todo'>
<class 'vsg.parser.todo'>
<class 'vsg.token.logical_operator.and_operator'>
<class 'vsg.token.todo.name'>
<class 'vsg.token.todo.open_parenthesis'>
<class 'vsg.parser.todo'>
<class 'vsg.token.direction.downto'>
<class 'vsg.parser.todo'>
<class 'vsg.token.todo.close_parenthesis'>
<class 'vsg.token.relational_operator.less_than_or_equal'>
<class 'vsg.parser.todo'>
<class 'vsg.parser.todo'>
<class 'vsg.parser.close_parenthesis'>
<class 'vsg.token.conditional_expressions.else_keyword'>
<class 'vsg.parser.character_literal'>
<class 'vsg.token.conditional_variable_assignment.semicolon'>
--------------------------------------------------------------------------------
7 |     hpp := '1' when a >= b and x <= y else '0';
<class 'vsg.token.conditional_variable_assignment.target'>
<class 'vsg.token.conditional_variable_assignment.assignment'>
<class 'vsg.parser.character_literal'>
<class 'vsg.token.conditional_expressions.when_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.token.relational_operator.greater_than_or_equal'>
<class 'vsg.parser.todo'>
<class 'vsg.token.logical_operator.and_operator'>
<class 'vsg.parser.todo'>
<class 'vsg.token.relational_operator.less_than_or_equal'>
<class 'vsg.parser.todo'>
<class 'vsg.token.conditional_expressions.else_keyword'>
<class 'vsg.parser.character_literal'>
<class 'vsg.token.conditional_variable_assignment.semicolon'>
--------------------------------------------------------------------------------
8 |     other_target <= '0' when x <= y;
<class 'vsg.token.conditional_waveform_assignment.target'>
<class 'vsg.token.conditional_waveform_assignment.assignment'>
<class 'vsg.parser.character_literal'>
<class 'vsg.token.conditional_waveforms.when_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.token.relational_operator.less_than_or_equal'>
<class 'vsg.parser.todo'>
<class 'vsg.token.conditional_waveform_assignment.semicolon'>
--------------------------------------------------------------------------------
9 |   end function;
<class 'vsg.token.subprogram_body.end_keyword'>
<class 'vsg.token.subprogram_kind.function_keyword'>
<class 'vsg.token.subprogram_body.semicolon'>
--------------------------------------------------------------------------------
10 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
11 | begin
<class 'vsg.token.architecture_body.begin_keyword'>
--------------------------------------------------------------------------------
12 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
13 |   process
<class 'vsg.token.process_statement.process_keyword'>
--------------------------------------------------------------------------------
14 |   begin
<class 'vsg.token.process_statement.begin_keyword'>
--------------------------------------------------------------------------------
15 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
16 |     SEL_LABEL : some target <= transport some expression when some condition else
<class 'vsg.token.signal_assignment_statement.label'>
<class 'vsg.token.signal_assignment_statement.label_colon'>
<class 'vsg.token.conditional_waveform_assignment.target'>
<class 'vsg.token.conditional_waveform_assignment.target'>
<class 'vsg.token.conditional_waveform_assignment.assignment'>
<class 'vsg.token.delay_mechanism.transport_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.parser.todo'>
<class 'vsg.token.conditional_waveforms.when_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.parser.todo'>
<class 'vsg.token.conditional_waveforms.else_keyword'>
--------------------------------------------------------------------------------
17 |                                          some expression when some condition else
<class 'vsg.parser.todo'>
<class 'vsg.parser.todo'>
<class 'vsg.token.conditional_waveforms.when_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.parser.todo'>
<class 'vsg.token.conditional_waveforms.else_keyword'>
--------------------------------------------------------------------------------
18 |                                          some expression;
<class 'vsg.parser.todo'>
<class 'vsg.parser.todo'>
<class 'vsg.token.conditional_waveform_assignment.semicolon'>
--------------------------------------------------------------------------------
19 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
20 |     SEL_LABEL : some target <= some expression when some condition else
<class 'vsg.token.signal_assignment_statement.label'>
<class 'vsg.token.signal_assignment_statement.label_colon'>
<class 'vsg.token.conditional_waveform_assignment.target'>
<class 'vsg.token.conditional_waveform_assignment.target'>
<class 'vsg.token.conditional_waveform_assignment.assignment'>
<class 'vsg.parser.todo'>
<class 'vsg.parser.todo'>
<class 'vsg.token.conditional_waveforms.when_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.parser.todo'>
<class 'vsg.token.conditional_waveforms.else_keyword'>
--------------------------------------------------------------------------------
21 |                                some expression when some condition else
<class 'vsg.parser.todo'>
<class 'vsg.parser.todo'>
<class 'vsg.token.conditional_waveforms.when_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.parser.todo'>
<class 'vsg.token.conditional_waveforms.else_keyword'>
--------------------------------------------------------------------------------
22 |                                some expression;
<class 'vsg.parser.todo'>
<class 'vsg.parser.todo'>
<class 'vsg.token.conditional_waveform_assignment.semicolon'>
--------------------------------------------------------------------------------
23 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
24 |     SEL_LABEL : some target <= some expression when some condition else
<class 'vsg.token.signal_assignment_statement.label'>
<class 'vsg.token.signal_assignment_statement.label_colon'>
<class 'vsg.token.conditional_waveform_assignment.target'>
<class 'vsg.token.conditional_waveform_assignment.target'>
<class 'vsg.token.conditional_waveform_assignment.assignment'>
<class 'vsg.parser.todo'>
<class 'vsg.parser.todo'>
<class 'vsg.token.conditional_waveforms.when_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.parser.todo'>
<class 'vsg.token.conditional_waveforms.else_keyword'>
--------------------------------------------------------------------------------
25 |                                some expression when some condition;
<class 'vsg.parser.todo'>
<class 'vsg.parser.todo'>
<class 'vsg.token.conditional_waveforms.when_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.parser.todo'>
<class 'vsg.token.conditional_waveform_assignment.semicolon'>
--------------------------------------------------------------------------------
26 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
27 |     SEL_LABEL : some target <= some expression when some condition;
<class 'vsg.token.signal_assignment_statement.label'>
<class 'vsg.token.signal_assignment_statement.label_colon'>
<class 'vsg.token.conditional_waveform_assignment.target'>
<class 'vsg.token.conditional_waveform_assignment.target'>
<class 'vsg.token.conditional_waveform_assignment.assignment'>
<class 'vsg.parser.todo'>
<class 'vsg.parser.todo'>
<class 'vsg.token.conditional_waveforms.when_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.parser.todo'>
<class 'vsg.token.conditional_waveform_assignment.semicolon'>
--------------------------------------------------------------------------------
28 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
29 |     -- Remove the labels
<class 'vsg.parser.comment'>
--------------------------------------------------------------------------------
30 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
31 |     some target <= transport some expression when some condition else
<class 'vsg.token.conditional_waveform_assignment.target'>
<class 'vsg.token.conditional_waveform_assignment.target'>
<class 'vsg.token.conditional_waveform_assignment.assignment'>
<class 'vsg.token.delay_mechanism.transport_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.parser.todo'>
<class 'vsg.token.conditional_waveforms.when_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.parser.todo'>
<class 'vsg.token.conditional_waveforms.else_keyword'>
--------------------------------------------------------------------------------
32 |                              some expression when some condition else
<class 'vsg.parser.todo'>
<class 'vsg.parser.todo'>
<class 'vsg.token.conditional_waveforms.when_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.parser.todo'>
<class 'vsg.token.conditional_waveforms.else_keyword'>
--------------------------------------------------------------------------------
33 |                              some expression;
<class 'vsg.parser.todo'>
<class 'vsg.parser.todo'>
<class 'vsg.token.conditional_waveform_assignment.semicolon'>
--------------------------------------------------------------------------------
34 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
35 |     some target <= some expression when some condition else
<class 'vsg.token.conditional_waveform_assignment.target'>
<class 'vsg.token.conditional_waveform_assignment.target'>
<class 'vsg.token.conditional_waveform_assignment.assignment'>
<class 'vsg.parser.todo'>
<class 'vsg.parser.todo'>
<class 'vsg.token.conditional_waveforms.when_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.parser.todo'>
<class 'vsg.token.conditional_waveforms.else_keyword'>
--------------------------------------------------------------------------------
36 |                    some expression when some condition else
<class 'vsg.parser.todo'>
<class 'vsg.parser.todo'>
<class 'vsg.token.conditional_waveforms.when_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.parser.todo'>
<class 'vsg.token.conditional_waveforms.else_keyword'>
--------------------------------------------------------------------------------
37 |                    some expression;
<class 'vsg.parser.todo'>
<class 'vsg.parser.todo'>
<class 'vsg.token.conditional_waveform_assignment.semicolon'>
--------------------------------------------------------------------------------
38 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
39 |     some target <= some expression when some condition else
<class 'vsg.token.conditional_waveform_assignment.target'>
<class 'vsg.token.conditional_waveform_assignment.target'>
<class 'vsg.token.conditional_waveform_assignment.assignment'>
<class 'vsg.parser.todo'>
<class 'vsg.parser.todo'>
<class 'vsg.token.conditional_waveforms.when_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.parser.todo'>
<class 'vsg.token.conditional_waveforms.else_keyword'>
--------------------------------------------------------------------------------
40 |                    some expression when some condition;
<class 'vsg.parser.todo'>
<class 'vsg.parser.todo'>
<class 'vsg.token.conditional_waveforms.when_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.parser.todo'>
<class 'vsg.token.conditional_waveform_assignment.semicolon'>
--------------------------------------------------------------------------------
41 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
42 |     some target <= some expression when some condition;
<class 'vsg.token.conditional_waveform_assignment.target'>
<class 'vsg.token.conditional_waveform_assignment.target'>
<class 'vsg.token.conditional_waveform_assignment.assignment'>
<class 'vsg.parser.todo'>
<class 'vsg.parser.todo'>
<class 'vsg.token.conditional_waveforms.when_keyword'>
<class 'vsg.parser.todo'>
<class 'vsg.parser.todo'>
<class 'vsg.token.conditional_waveform_assignment.semicolon'>
--------------------------------------------------------------------------------
43 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
44 |   end process;
<class 'vsg.token.process_statement.end_keyword'>
<class 'vsg.token.process_statement.end_process_keyword'>
<class 'vsg.token.process_statement.semicolon'>
--------------------------------------------------------------------------------
45 |
<class 'vsg.parser.blank_line'>
--------------------------------------------------------------------------------
46 | 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'>
