Package com.aparapi.internal.writer
Class BlockWriter
java.lang.Object
com.aparapi.internal.writer.BlockWriter
- Direct Known Subclasses:
InstructionHelper.StringWriter
,KernelWriter
Base abstract class for converting
Aparapi
IR to text.-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionconvertCast
(String _cast) convertType
(String _typeDesc, boolean useClassModel, boolean isLocal) private InstructionSet.AccessField
getUltimateInstanceFieldAccess
(InstructionSet.AccessArrayElement arrayLoadInstruction) getUltimateInstanceLocalVarAccess
(InstructionSet.AccessArrayElement arrayLoadInstruction) void
in()
private boolean
isMultiDimensionalArray
(InstructionSet.AccessArrayElement arrayLoadInstruction) private boolean
isMultiDimensionalArray
(ClassModel.ConstantPool.NameAndTypeEntry nameAndTypeEntry) private boolean
isNeedParenthesis
(Instruction instruction) private boolean
isObjectArray
(InstructionSet.AccessArrayElement arrayLoadInstruction) private boolean
isObjectArray
(ClassModel.ConstantPool.NameAndTypeEntry nameAndTypeEntry) void
newLine()
void
out()
void
abstract void
write
(Entrypoint entryPoint) abstract void
void
writeBlock
(Instruction _first, Instruction _last) void
writeComposite
(InstructionSet.CompositeInstruction instruction) writeConditional
(BranchSet _branchSet) writeConditional
(BranchSet _branchSet, boolean _invert) void
writeConditionalBranch16
(InstructionSet.ConditionalBranch16 _branch16, boolean _invert) protected void
writeGetterBlock
(ClassModel.ConstantPool.FieldEntry accessorVariableFieldEntry) void
writeInstruction
(Instruction _instruction) void
void
writeMethod
(InstructionSet.MethodCall _methodCall, ClassModel.ConstantPool.MethodEntry _methodEntry) void
writeMethodBody
(MethodModel _methodModel) void
writeSequence
(Instruction _first, Instruction _last) void
-
Field Details
-
arrayLengthMangleSuffix
- See Also:
-
arrayDimMangleSuffix
- See Also:
-
indent
public int indent
-
-
Constructor Details
-
BlockWriter
public BlockWriter()
-
-
Method Details
-
write
-
writeln
-
in
public void in() -
out
public void out() -
newLine
public void newLine() -
writeConditionalBranch16
public void writeConditionalBranch16(InstructionSet.ConditionalBranch16 _branch16, boolean _invert) throws CodeGenException - Throws:
CodeGenException
-
writeComposite
- Throws:
CodeGenException
-
writeSequence
- Throws:
CodeGenException
-
writeGetterBlock
-
writeBlock
- Throws:
CodeGenException
-
writeConditional
- Throws:
CodeGenException
-
writeConditional
- Throws:
CodeGenException
-
write
- Throws:
CodeGenException
-
convertType
-
convertCast
-
writeInstruction
- Throws:
CodeGenException
-
isNeedParenthesis
-
isMultiDimensionalArray
-
isObjectArray
-
isMultiDimensionalArray
-
isObjectArray
-
getUltimateInstanceFieldAccess
private InstructionSet.AccessField getUltimateInstanceFieldAccess(InstructionSet.AccessArrayElement arrayLoadInstruction) -
getUltimateInstanceLocalVarAccess
private InstructionSet.AccessLocalVariable getUltimateInstanceLocalVarAccess(InstructionSet.AccessArrayElement arrayLoadInstruction) -
writeMethod
public void writeMethod(InstructionSet.MethodCall _methodCall, ClassModel.ConstantPool.MethodEntry _methodEntry) throws CodeGenException - Throws:
CodeGenException
-
writeThisRef
public void writeThisRef() -
writeMethodBody
- Throws:
CodeGenException
-
write
- Throws:
CodeGenException
-