static jparse()

in impl/src/compiler/mir_ops.ts [692:810]


    static jparse(jobj: any & { tag: string }): MIROp {
        switch (jobj.tag) {
            case MIROpTag.MIRNop:
                return MIRNop.jparse(jobj);
            case MIROpTag.MIRDeadFlow:
                return MIRDeadFlow.jparse(jobj);
            case MIROpTag.MIRAbort:
                return MIRAbort.jparse(jobj);
            case MIROpTag.MIRAssertCheck:
                return MIRAssertCheck.jparse(jobj);
            case MIROpTag.MIRDebug:
                return MIRDebug.jparse(jobj);
            case MIROpTag.MIRLoadUnintVariableValue:
                return MIRLoadUnintVariableValue.jparse(jobj);
            case MIROpTag.MIRDeclareGuardFlagLocation:
                return MIRDeclareGuardFlagLocation.jparse(jobj);
            case MIROpTag.MIRSetConstantGuardFlag:
                return MIRSetConstantGuardFlag.jparse(jobj);
            case MIROpTag.MIRConvertValue:
                return MIRConvertValue.jparse(jobj);
            case MIROpTag.MIRInject:
                return MIRInject.jparse(jobj);
            case MIROpTag.MIRGuardedOptionInject:
                return MIRGuardedOptionInject.jparse(jobj);
            case MIROpTag.MIRExtract:
                return MIRExtract.jparse(jobj);
            case MIROpTag.MIRLoadConst:
                return MIRLoadConst.jparse(jobj);
            case MIROpTag.MIRTupleHasIndex:
                return MIRTupleHasIndex.jparse(jobj);
            case MIROpTag.MIRRecordHasProperty:
                return MIRRecordHasProperty.jparse(jobj);
            case MIROpTag.MIRLoadTupleIndex:
                return MIRLoadTupleIndex.jparse(jobj);
            case MIROpTag.MIRLoadTupleIndexSetGuard:
                return MIRLoadTupleIndexSetGuard.jparse(jobj);
            case MIROpTag.MIRLoadRecordProperty:
                return MIRLoadRecordProperty.jparse(jobj);
            case MIROpTag.MIRLoadRecordPropertySetGuard:
                return MIRLoadRecordPropertySetGuard.jparse(jobj);
            case MIROpTag.MIRLoadField:
                return MIRLoadField.jparse(jobj);
            case MIROpTag.MIRTupleProjectToEphemeral:
                return MIRTupleProjectToEphemeral.jparse(jobj);
            case MIROpTag.MIRRecordProjectToEphemeral:
                return MIRRecordProjectToEphemeral.jparse(jobj);
            case MIROpTag.MIREntityProjectToEphemeral:
                return MIREntityProjectToEphemeral.jparse(jobj);
            case MIROpTag.MIRTupleUpdate:
                return MIRTupleUpdate.jparse(jobj);
            case MIROpTag.MIRRecordUpdate:
                return MIRRecordUpdate.jparse(jobj);
            case MIROpTag.MIREntityUpdate:
                return MIREntityUpdate.jparse(jobj);
            case MIROpTag.MIRLoadFromEpehmeralList:
                return MIRLoadFromEpehmeralList.jparse(jobj);
            case MIROpTag.MIRMultiLoadFromEpehmeralList:
                return MIRMultiLoadFromEpehmeralList.jparse(jobj);
            case MIROpTag.MIRSliceEpehmeralList:
                return MIRSliceEpehmeralList.jparse(jobj);
            case MIROpTag.MIRInvokeFixedFunction:
                return MIRInvokeFixedFunction.jparse(jobj);
            case MIROpTag.MIRInvokeVirtualFunction:
                return MIRInvokeVirtualFunction.jparse(jobj);
            case MIROpTag.MIRInvokeVirtualOperator:
                return MIRInvokeVirtualOperator.jparse(jobj); 
            case MIROpTag.MIRConstructorTuple:
                return MIRConstructorTuple.jparse(jobj);
            case MIROpTag.MIRConstructorTupleFromEphemeralList:
                return MIRConstructorTupleFromEphemeralList.jparse(jobj);
            case MIROpTag.MIRConstructorRecord:
                return MIRConstructorRecord.jparse(jobj);
            case MIROpTag.MIRConstructorRecordFromEphemeralList:
                return MIRConstructorRecordFromEphemeralList.jparse(jobj);
            case MIROpTag.MIRStructuredAppendTuple:
                return MIRStructuredAppendTuple.jparse(jobj);
            case MIROpTag.MIRStructuredJoinRecord:
                return MIRStructuredJoinRecord.jparse(jobj);
            case MIROpTag.MIRConstructorEphemeralList:
                return MIRConstructorEphemeralList.jparse(jobj);
            case MIROpTag.MIREphemeralListExtend:
                return MIREphemeralListExtend.jparse(jobj);
            case MIROpTag.MIRConstructorPrimaryCollectionEmpty:
                return MIRConstructorPrimaryCollectionEmpty.jparse(jobj);
            case MIROpTag.MIRConstructorPrimaryCollectionSingletons:
                return MIRConstructorPrimaryCollectionSingletons.jparse(jobj);
            case MIROpTag.MIRConstructorPrimaryCollectionCopies:
                return MIRConstructorPrimaryCollectionCopies.jparse(jobj);
            case MIROpTag.MIRConstructorPrimaryCollectionMixed:
                return MIRConstructorPrimaryCollectionMixed.jparse(jobj);
            case MIROpTag.MIRBinKeyEq:
                return MIRBinKeyEq.jparse(jobj);
            case MIROpTag.MIRBinKeyLess:
                return MIRBinKeyLess.jparse(jobj);
            case MIROpTag.MIRPrefixNotOp:
                return MIRPrefixNotOp.jparse(jobj);
            case MIROpTag.MIRIsTypeOf:
                return MIRIsTypeOf.jparse(jobj);
            case MIROpTag.MIRJump:
                return MIRJump.jparse(jobj);
            case MIROpTag.MIRJumpCond:
                return MIRJumpCond.jparse(jobj);
            case MIROpTag.MIRJumpNone:
                return MIRJumpNone.jparse(jobj);
            case MIROpTag.MIRRegisterAssign:
                return MIRRegisterAssign.jparse(jobj);
            case MIROpTag.MIRReturnAssign:
                return MIRReturnAssign.jparse(jobj);
            case MIROpTag.MIRReturnAssignOfCons:
                return MIRReturnAssignOfCons.jparse(jobj);
            case MIROpTag.MIRVarLifetimeStart:
                return MIRVarLifetimeStart.jparse(jobj);
            case MIROpTag.MIRVarLifetimeEnd:
                return MIRVarLifetimeEnd.jparse(jobj);
            default:
                assert(jobj.tag === MIROpTag.MIRPhi);
                return MIRPhi.jparse(jobj);
        }
    }