AbstractCodeGenerator

abstract class AbstractCodeGenerator(context: CodeGeneratorContext) : CodeGenerator

Functions

cleartextExp
Link copied to clipboard
fun cleartextExp(protocol: Protocol, expr: AtomicExpressionNode): CodeBlock
declaration
Link copied to clipboard
fun declaration(protocol: Protocol, stmt: DeclarationNode): CodeBlock
exp
Link copied to clipboard
abstract fun exp(protocol: Protocol, expr: ExpressionNode): CodeBlock
guard
Link copied to clipboard
abstract fun guard(protocol: Protocol, expr: AtomicExpressionNode): CodeBlock
let
Link copied to clipboard
abstract fun let(protocol: Protocol, stmt: LetNode): CodeBlock
output
Link copied to clipboard
abstract fun output(protocol: Protocol, stmt: OutputNode): CodeBlock
receive
Link copied to clipboard
abstract fun receive(sender: LetNode, sendProtocol: Protocol, receiveProtocol: Protocol, events: ProtocolCommunication): CodeBlock
send
Link copied to clipboard
abstract fun send(sender: LetNode, sendProtocol: Protocol, receiveProtocol: Protocol, events: ProtocolCommunication): CodeBlock
simpleStatement
Link copied to clipboard
open override fun simpleStatement(protocol: Protocol, stmt: SimpleStatementNode): CodeBlock
update
Link copied to clipboard
abstract fun update(protocol: Protocol, stmt: UpdateNode): CodeBlock
value
Link copied to clipboard
fun value(value: Value): CodeBlock

Properties

context
Link copied to clipboard
val context: CodeGeneratorContext

Inheritors

CleartextCodeGenerator
Link copied to clipboard
SingleProtocolCodeGenerator
Link copied to clipboard