ABYProtocolInterpreter

class ABYProtocolInterpreter(host: Host, otherHost: Host, role: Role, program: ProgramNode, protocolAnalysis: ProtocolAnalysis, runtime: ViaductRuntime, connectionMap: Map<Host, HostAddress>, port: Int = DEFAULT_PORT) : AbstractProtocolInterpreter<ABYProtocolInterpreter.ABYClassObject>

Constructors

Link copied to clipboard
fun ABYProtocolInterpreter(host: Host, otherHost: Host, role: Role, program: ProgramNode, protocolAnalysis: ProtocolAnalysis, runtime: ViaductRuntime, connectionMap: Map<Host, HostAddress>, port: Int = DEFAULT_PORT)

Types

Link copied to clipboard
abstract class ABYClassObject
Link copied to clipboard
inner class ABYVectorObject(circuitType: ABYCircuitType, val size: Int, defaultValue: Value) : ABYProtocolInterpreter.ABYClassObject
Link copied to clipboard

Functions

Link copied to clipboard
Link copied to clipboard
open suspend override fun buildObject(protocol: Protocol, className: ClassName, typeArguments: List<ValueType>, arguments: List<AtomicExpressionNode>): ABYProtocolInterpreter.ABYClassObject
Link copied to clipboard
open override fun getContextMarker(): Int
Link copied to clipboard
Link copied to clipboard
open suspend override fun popContext()
Link copied to clipboard
open suspend override fun popFunctionContext()
Link copied to clipboard
open suspend override fun pushContext()
Link copied to clipboard
open suspend override fun pushFunctionContext(arguments: PersistentMap<ParameterNode, Pair<Protocol, FunctionArgumentNode>>)
Link copied to clipboard
open suspend override fun restoreContext(marker: Int)
Link copied to clipboard
open suspend override fun runGuard(protocol: Protocol, expr: AtomicExpressionNode): Value
Link copied to clipboard
open suspend override fun runLet(protocol: Protocol, stmt: LetNode)
Link copied to clipboard
open suspend override fun runOutput(protocol: Protocol, stmt: OutputNode)
Link copied to clipboard
open suspend override fun runReceive(sender: LetNode, sendProtocol: Protocol, receiver: SimpleStatementNode, recvProtocol: Protocol, events: ProtocolCommunication)
Link copied to clipboard
open suspend override fun runSend(sender: LetNode, sendProtocol: Protocol, receiver: SimpleStatementNode, recvProtocol: Protocol, events: ProtocolCommunication)
Link copied to clipboard
open suspend override fun runSimpleStatement(protocol: Protocol, stmt: SimpleStatementNode)
Link copied to clipboard
open suspend override fun runUpdate(protocol: Protocol, stmt: UpdateNode)

Properties

Link copied to clipboard
open override val availableProtocols: Set<Protocol>
Link copied to clipboard