interface JLhs
Modifier and Type | Method and Description |
---|---|
JExpression |
analyzeLhs(Context context)
Analyze the lhs of an assignment.
|
void |
codegenDuplicateRvalue(CLEmitter output)
Generate the code required for duplicating the Rvalue that is on the
stack becuase it is to be used in a surrounding expression, as in a[i] =
x =
|
void |
codegenLoadLhsLvalue(CLEmitter output)
The up front code necessary for implementing an assignment; it generates
code to load onto the stack any part of the lhs variable that must be
there.
|
void |
codegenLoadLhsRvalue(CLEmitter output)
Generate the code required for loading an Rvalue for this variable, as in
a +=.
|
void |
codegenStore(CLEmitter output)
Generate the code required for doing the actual assignment.
|
JExpression analyzeLhs(Context context)
context
- context in which names are resolved.void codegenLoadLhsLvalue(CLEmitter output)
output
- the code emitter (basically an abstraction for producing the
.class file).void codegenLoadLhsRvalue(CLEmitter output)
output
- the code emitter (basically an abstraction for producing the
.class file).void codegenDuplicateRvalue(CLEmitter output)
output
- the code emitter (basically an abstraction for producing the
.class file).void codegenStore(CLEmitter output)
output
- the code emitter (basically an abstraction for producing the
.class file).