Class CodeBuilder
- java.lang.Object
-
- io.github.applecommander.bastools.api.code.CodeBuilder
-
public class CodeBuilder extends java.lang.ObjectCodeBuilderallows dynamic generation of combined BASIC and Assembly code with dynamicCodeMarkcapability. This allows forward references to unknown address in a (mostly) safe manner.
-
-
Constructor Summary
Constructors Constructor Description CodeBuilder()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description CodeBuilderadd(CodeGenerator generator)Helper method to chain in aCodeGenerator.CodeBuilderaddBinary(byte[] data)Add abyte[]to this stream.AsmBuilderasm()Start generating Assembly code.BasicBuilderbasic()Start generating BASIC code.java.io.ByteArrayOutputStreamgenerate(int startAddress)Generate this set of code beginning at the starting address.CodeBuilderset(CodeMark mark)Set aCodeMark's value.
-
-
-
Method Detail
-
generate
public java.io.ByteArrayOutputStream generate(int startAddress) throws java.io.IOExceptionGenerate this set of code beginning at the starting address.- Returns:
- ByteArrayOutputStream which allows
ByteArrayOutputStream#writeTo(java.io.OutputStream)andByteArrayOutputStream#toByteArray() - Throws:
java.io.IOException
-
basic
public BasicBuilder basic()
Start generating BASIC code.
-
asm
public AsmBuilder asm()
Start generating Assembly code.
-
add
public CodeBuilder add(CodeGenerator generator)
Helper method to chain in aCodeGenerator.
-
set
public CodeBuilder set(CodeMark mark)
Set aCodeMark's value.
-
addBinary
public CodeBuilder addBinary(byte[] data)
Add abyte[]to this stream.
-
-