Class StandaloneExpression
java.lang.Object
simula.compiler.syntaxClass.SyntaxClass
simula.compiler.syntaxClass.statement.Statement
simula.compiler.syntaxClass.statement.StandaloneExpression
Standalone Expression Statement.
Syntax: standalone-expression = expression | assignment-statement assignment-statement = expression { assignment-operator expression }
Link to GitHub: Source File.
- Author:
- Øystein Myhre Andersen
-
Field Summary
FieldsFields inherited from class simula.compiler.syntaxClass.SyntaxClass
CHECKED, lineNumber, OBJECT_SEQU
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprivate
Default constructor used by Attribute File I/O(package private)
StandaloneExpression
(int line, Expression expression) Create a new StandaloneExpression. -
Method Summary
Modifier and TypeMethodDescriptionvoid
buildByteCode
(CodeBuilder codeBuilder) Build Java ByteCode.void
Perform semantic checking.void
Output Java code.private static Expression
Parse a standalone expression.void
print
(int indent) Utility print method.void
Utility print syntax tree method.static StandaloneExpression
Read and return a StandaloneExpression object.Generate Java code for this Syntax Class.toString()
void
Write a SyntaxClass object to a AttributeOutputStream.Methods inherited from class simula.compiler.syntaxClass.statement.Statement
expectStatement
Methods inherited from class simula.compiler.syntaxClass.SyntaxClass
ASSERT_SEMANTICS_CHECKED, doDeclarationCoding, edIndent, edTreeIndent, IS_SEMANTICS_CHECKED, SET_SEMANTICS_CHECKED, setLineNumber
-
Field Details
-
expression
The expression.
-
-
Constructor Details
-
StandaloneExpression
StandaloneExpression(int line, Expression expression) Create a new StandaloneExpression.- Parameters:
line
- the source line numberexpression
- the expression
-
StandaloneExpression
private StandaloneExpression()Default constructor used by Attribute File I/O
-
-
Method Details
-
expectStandaloneExpression
Parse a standalone expression.
Syntax: standalone-expression = expression { assignment-operator expression }
Pre-Condition: First expression is already read.
- Returns:
- the resulting StandaloneExpression
-
doChecking
public void doChecking()Description copied from class:SyntaxClass
Perform semantic checking.
This must be redefined in every subclass.
- Overrides:
doChecking
in classSyntaxClass
-
doJavaCoding
public void doJavaCoding()Description copied from class:SyntaxClass
Output Java code.- Overrides:
doJavaCoding
in classStatement
-
toJavaCode
Description copied from class:SyntaxClass
Generate Java code for this Syntax Class.- Overrides:
toJavaCode
in classSyntaxClass
- Returns:
- Java code
-
buildByteCode
Description copied from class:Statement
Build Java ByteCode.- Overrides:
buildByteCode
in classStatement
- Parameters:
codeBuilder
- the codeBuilder to use.
-
print
public void print(int indent) Description copied from class:SyntaxClass
Utility print method.- Overrides:
print
in classSyntaxClass
- Parameters:
indent
- number of spaces leading the line
-
printTree
Description copied from class:SyntaxClass
Utility print syntax tree method.- Overrides:
printTree
in classSyntaxClass
- Parameters:
indent
- number of spaces leading the lineshead
- the head of the tree.
-
toString
-
writeObject
Description copied from class:SyntaxClass
Write a SyntaxClass object to a AttributeOutputStream.- Overrides:
writeObject
in classSyntaxClass
- Parameters:
oupt
- the AttributeOutputStream to write to.- Throws:
IOException
- if something went wrong.
-
readObject
Read and return a StandaloneExpression object.- Parameters:
inpt
- the AttributeInputStream to read from- Returns:
- the StandaloneExpression object read from the stream.
- Throws:
IOException
- if something went wrong.
-