Allow booting an actor into an existing ActorSpace
This commit is contained in:
parent
c6eef34736
commit
2671033b07
|
@ -101,8 +101,16 @@ export class Actor {
|
|||
exitReason: ExitReason = null;
|
||||
readonly exitHooks: Array<LocalAction> = [];
|
||||
|
||||
static boot(bootProc: LocalAction, initialAssertions: OutboundMap = new Map()): Actor {
|
||||
const newActor = new Actor(new ActorSpace(), initialAssertions);
|
||||
static boot(bootProc: LocalAction, space: ActorSpace, initialAssertions?: OutboundMap): Actor;
|
||||
static boot(bootProc: LocalAction, initialAssertions?: OutboundMap): Actor;
|
||||
static boot(bootProc: LocalAction, spaceOrInitialAssertions?: ActorSpace | OutboundMap, initialAssertions0?: OutboundMap): Actor {
|
||||
const space: ActorSpace = (spaceOrInitialAssertions && !Map.isMap(spaceOrInitialAssertions))
|
||||
? spaceOrInitialAssertions
|
||||
: new ActorSpace();
|
||||
const initialAssertions: OutboundMap | undefined = (spaceOrInitialAssertions && Map.isMap(spaceOrInitialAssertions))
|
||||
? spaceOrInitialAssertions
|
||||
: (spaceOrInitialAssertions ? initialAssertions0 : void 0);
|
||||
const newActor = new Actor(space, initialAssertions);
|
||||
newActor._boot(bootProc);
|
||||
return newActor;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue