Class SwitchStatement.SwitchWhenPart
java.lang.Object
simula.compiler.syntaxClass.statement.SwitchStatement.SwitchWhenPart
- Enclosing class:
SwitchStatement
Utility class SwitchWhenPart.
- Author:
- Øystein Myhre Andersen
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) Vector
<SwitchStatement.SwitchInterval> The case key list.(package private) Statement
The statement -
Constructor Summary
ConstructorsModifierConstructorDescriptionprivate
SwitchWhenPart
(Vector<SwitchStatement.SwitchInterval> caseKeyList, Statement statement) Create a new SwitchWhenPart. -
Method Summary
Modifier and TypeMethodDescriptionprivate void
buildByteCode
(CodeBuilder codeBuilder) ClassFile coding utility: buildByteCode.private void
doCoding
(boolean first) Coding Utility: Edit this when-part.private String
edWhen()
Utility: Edit when clause.private int
initLookupSwitchCases
(int index, CodeBuilder codeBuilder) ClassFile coding utility: initLookupSwitchCases.private void
print
(int indent) Utility method print.void
Debug utility: printTree.toString()
-
Field Details
-
caseKeyList
Vector<SwitchStatement.SwitchInterval> caseKeyListThe case key list. -
statement
Statement statementThe statement
-
-
Constructor Details
-
SwitchWhenPart
Create a new SwitchWhenPart.- Parameters:
caseKeyList
- the case key liststatement
- the statement
-
-
Method Details
-
doCoding
private void doCoding(boolean first) Coding Utility: Edit this when-part.- Parameters:
first
- true if this when-part is the first being edited
-
initLookupSwitchCases
ClassFile coding utility: initLookupSwitchCases.- Parameters:
index
- starting case index.codeBuilder
- the codeBuilder to use.- Returns:
- final case index.
-
buildByteCode
ClassFile coding utility: buildByteCode.- Parameters:
codeBuilder
- the codeBuilder to use.
-
print
private void print(int indent) Utility method print.- Parameters:
indent
- the indentation
-
edWhen
-
printTree
Debug utility: printTree.- Parameters:
indent
- the indentation.head
- the head of the tree.
-
toString
-