add inline Peer definition to Interpreter()
This commit is contained in:
@@ -56,6 +56,8 @@ export interface Interpreter_T<C> {
|
|||||||
isTransitioning: boolean;
|
isTransitioning: boolean;
|
||||||
isPaused: boolean;
|
isPaused: boolean;
|
||||||
start: ()=>Interpreter_T<C>;
|
start: ()=>Interpreter_T<C>;
|
||||||
|
Peer: (name:string, peer:Interpreter_T<unknown>)=>Interpreter_T<C>;
|
||||||
|
Peers: (name:string, peers:Array<Interpreter_T<unknown>>)=>Interpreter_T<C>;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -72,6 +74,8 @@ export function Interpreter<C>(machine:Machine_T<C>, initialContext:any, initial
|
|||||||
//@ts-expect-error
|
//@ts-expect-error
|
||||||
const interpreter : Interpreter_T<C> = {machine, state: initialStateName, context:initialContext, eventQueue:[], isTransitioning:false, peers:{}, peerSubscriptionIds:new Map(), subscriptionsToEvents: {}, subscriptionsToState: {}, subscriptionsToSettledState: {}, isPaused: true};
|
const interpreter : Interpreter_T<C> = {machine, state: initialStateName, context:initialContext, eventQueue:[], isTransitioning:false, peers:{}, peerSubscriptionIds:new Map(), subscriptionsToEvents: {}, subscriptionsToState: {}, subscriptionsToSettledState: {}, isPaused: true};
|
||||||
interpreter.start = ()=>{ start(interpreter); return interpreter; }
|
interpreter.start = ()=>{ start(interpreter); return interpreter; }
|
||||||
|
interpreter.Peer = (name:string, peer:Interpreter_T<unknown>)=>{ setPeer(interpreter, name, peer); return interpreter; }
|
||||||
|
interpreter.Peers = (name:string, peers:Array<Interpreter_T<unknown>>)=>{ setPeers(interpreter, name, peers); return interpreter; }
|
||||||
send(interpreter, ['entry', null] );
|
send(interpreter, ['entry', null] );
|
||||||
return interpreter;
|
return interpreter;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user