Package edu.cornell.cs.apl.viaduct.codegeneration
Types
AbstractCodeGenerator
Link copied to clipboard
abstract class AbstractCodeGenerator(context: CodeGeneratorContext) : CodeGenerator
Content copied to clipboard
CodeGenerator
Link copied to clipboard
CodeGeneratorContext
Link copied to clipboard
SingleProtocolCodeGenerator
Link copied to clipboard
abstract class SingleProtocolCodeGenerator(context: CodeGeneratorContext) : AbstractCodeGenerator
Content copied to clipboard
Functions
compileToKotlin
Link copied to clipboard
fun ProgramNode.compileToKotlin(fileName: String, packageName: String, codeGenerators: List<(context: CodeGeneratorContext) -> CodeGenerator>, protocolComposer: ProtocolComposer): FileSpec
Content copied to clipboard
receiveReplicated
Link copied to clipboard
fun receiveReplicated(sender: LetNode, sendProtocol: Protocol, events: Set<CommunicationEvent>, context: CodeGeneratorContext, typeAnalysis: TypeAnalysis): CodeBlock
Content copied to clipboard
typeTranslator
Link copied to clipboard
unions
Link copied to clipboard
fun Iterable<Pair<Set<ProtocolName>, CodeGenerator>>.unions(): CodeGenerator
Content copied to clipboard
Combines code generators for different protocols into one generator that can handle all protocols.
Properties
valueClass
Link copied to clipboard
Returns the KClass object for values of this type.