public class org.finos.legend.engine.repl.autocomplete.handlers.GroupByHandler extends org.finos.legend.engine.repl.autocomplete.FunctionHandler
{
public void <init>()
{
org.finos.legend.engine.repl.autocomplete.handlers.GroupByHandler v;
v := @this: org.finos.legend.engine.repl.autocomplete.handlers.GroupByHandler;
specialinvoke v.<org.finos.legend.engine.repl.autocomplete.FunctionHandler: void <init>()>();
return;
}
public java.lang.String functionName()
{
org.finos.legend.engine.repl.autocomplete.handlers.GroupByHandler v;
v := @this: org.finos.legend.engine.repl.autocomplete.handlers.GroupByHandler;
return "groupBy";
}
public org.eclipse.collections.api.list.MutableList proposedParameters(org.finos.legend.engine.protocol.pure.v.model.valueSpecification.application.AppliedFunction, org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.generics.GenericType, org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel, org.finos.legend.engine.repl.autocomplete.Completer, org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext, org.finos.legend.engine.protocol.pure.v.model.valueSpecification.ValueSpecification)
{
org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel v;
org.finos.legend.engine.repl.autocomplete.handlers.GroupByHandler v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext v;
org.finos.legend.engine.protocol.pure.v.model.valueSpecification.ValueSpecification v;
org.eclipse.collections.api.list.MutableList v;
org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.generics.GenericType v;
org.finos.legend.engine.repl.autocomplete.Completer v;
org.finos.legend.engine.protocol.pure.v.model.valueSpecification.application.AppliedFunction v;
v := @this: org.finos.legend.engine.repl.autocomplete.handlers.GroupByHandler;
v := @parameter: org.finos.legend.engine.protocol.pure.v.model.valueSpecification.application.AppliedFunction;
v := @parameter: org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.generics.GenericType;
v := @parameter: org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel;
v := @parameter: org.finos.legend.engine.repl.autocomplete.Completer;
v := @parameter: org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext;
v := @parameter: org.finos.legend.engine.protocol.pure.v.model.valueSpecification.ValueSpecification;
v = staticinvoke <org.finos.legend.engine.repl.autocomplete.Completer: org.eclipse.collections.api.list.MutableList proposeColumnNamesForEditColSpec(org.finos.legend.engine.protocol.pure.v.model.valueSpecification.application.AppliedFunction,org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.generics.GenericType)>(v, v);
return v;
}
public void handleFunctionAppliedParameters(org.finos.legend.engine.protocol.pure.v.model.valueSpecification.application.AppliedFunction, org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.generics.GenericType, org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext, org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel)
{
org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel v;
org.finos.legend.engine.repl.autocomplete.handlers.GroupByHandler v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext v;
java.util.List v, v, v;
org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.generics.GenericType v;
int v;
java.lang.Object v, v, v;
boolean v;
org.finos.legend.engine.protocol.pure.v.model.valueSpecification.application.AppliedFunction v;
v := @this: org.finos.legend.engine.repl.autocomplete.handlers.GroupByHandler;
v := @parameter: org.finos.legend.engine.protocol.pure.v.model.valueSpecification.application.AppliedFunction;
v := @parameter: org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.generics.GenericType;
v := @parameter: org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext;
v := @parameter: org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel;
v = v.<org.finos.legend.engine.protocol.pure.v.model.valueSpecification.application.AppliedFunction: java.util.List parameters>;
v = interfaceinvoke v.<java.util.List: int size()>();
if v <= 2 goto label;
v = v.<org.finos.legend.engine.protocol.pure.v.model.valueSpecification.application.AppliedFunction: java.util.List parameters>;
v = interfaceinvoke v.<java.util.List: java.lang.Object get(int)>(2);
v = v instanceof org.finos.legend.engine.protocol.pure.v.model.valueSpecification.raw.ClassInstance;
if v == 0 goto label;
v = v.<org.finos.legend.engine.protocol.pure.v.model.valueSpecification.application.AppliedFunction: java.util.List parameters>;
v = interfaceinvoke v.<java.util.List: java.lang.Object get(int)>(2);
v = v.<org.finos.legend.engine.protocol.pure.v.model.valueSpecification.raw.ClassInstance: java.lang.Object value>;
staticinvoke <org.finos.legend.engine.repl.autocomplete.handlers.ExtendHandler: void updateColSpecFirstFunction(java.lang.Object,org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.generics.GenericType,org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext,org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel)>(v, v, v, v);
staticinvoke <org.finos.legend.engine.repl.autocomplete.handlers.GroupByHandler: void updateColSpecSecondFunction(org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext,org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel,java.lang.Object)>(v, v, v);
label:
return;
}
public static void updateColSpecSecondFunction(org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext, org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel, java.lang.Object)
{
org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext v;
org.eclipse.collections.api.block.procedure.Procedure v;
java.lang.Exception v;
java.util.List v;
java.lang.Object v;
boolean v, v;
v := @parameter: org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext;
v := @parameter: org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel;
v := @parameter: java.lang.Object;
label:
v = v instanceof org.finos.legend.engine.protocol.pure.v.model.valueSpecification.raw.classInstance.relation.ColSpec;
if v == 0 goto label;
staticinvoke <org.finos.legend.engine.repl.autocomplete.handlers.GroupByHandler: void processColSpecSecondFunction(org.finos.legend.engine.protocol.pure.v.model.valueSpecification.raw.classInstance.relation.ColSpec,org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext,org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel)>(v, v, v);
label:
v = v instanceof org.finos.legend.engine.protocol.pure.v.model.valueSpecification.raw.classInstance.relation.ColSpecArray;
if v == 0 goto label;
v = v.<org.finos.legend.engine.protocol.pure.v.model.valueSpecification.raw.classInstance.relation.ColSpecArray: java.util.List colSpecs>;
v = staticinvoke <org.finos.legend.engine.repl.autocomplete.handlers.GroupByHandler$lambda_updateColSpecSecondFunction_5d5f5d23_1__137: org.eclipse.collections.api.block.procedure.Procedure bootstrap$(org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext,org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel)>(v, v);
staticinvoke <org.eclipse.collections.impl.utility.ListIterate: void forEach(java.util.List,org.eclipse.collections.api.block.procedure.Procedure)>(v, v);
label:
goto label;
label:
v := @caughtexception;
label:
return;
catch java.lang.Exception from label to label with label;
}
private static void processColSpecSecondFunction(org.finos.legend.engine.protocol.pure.v.model.valueSpecification.raw.classInstance.relation.ColSpec, org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext, org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel)
{
org.finos.legend.engine.protocol.pure.v.model.valueSpecification.raw.classInstance.relation.ColSpec v;
org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.valuespecification.VariableExpression v;
org.finos.legend.engine.protocol.pure.v.model.valueSpecification.raw.Lambda v, v;
org.eclipse.collections.api.factory.list.MutableListFactory v;
org.eclipse.collections.api.list.MutableList v;
org.eclipse.collections.api.RichIterable v, v;
java.lang.String v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.ValueSpecificationBuilder v;
org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.Type v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext$Builder v;
java.util.List v;
org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.multiplicity.Multiplicity v;
org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.generics.GenericType v, v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext v;
java.lang.Object v, v, v, v;
v := @parameter: org.finos.legend.engine.protocol.pure.v.model.valueSpecification.raw.classInstance.relation.ColSpec;
v := @parameter: org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext;
v := @parameter: org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel;
v = v.<org.finos.legend.engine.protocol.pure.v.model.valueSpecification.raw.classInstance.relation.ColSpec: org.finos.legend.engine.protocol.pure.v.model.valueSpecification.raw.Lambda function1>;
v = new org.finos.legend.engine.language.pure.compiler.toPureGraph.ValueSpecificationBuilder;
v = new org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext$Builder;
specialinvoke v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext$Builder: void <init>(org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel)>(v);
v = virtualinvoke v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext$Builder: org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext build()>();
v = <org.eclipse.collections.impl.factory.Lists: org.eclipse.collections.api.factory.list.MutableListFactory mutable>;
v = interfaceinvoke v.<org.eclipse.collections.api.factory.list.MutableListFactory: org.eclipse.collections.api.list.MutableList empty()>();
specialinvoke v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.ValueSpecificationBuilder: void <init>(org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext,org.eclipse.collections.api.list.MutableList,org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext)>(v, v, v);
v = virtualinvoke v.<org.finos.legend.engine.protocol.pure.v.model.valueSpecification.raw.Lambda: java.lang.Object accept(org.finos.legend.engine.protocol.pure.v.model.valueSpecification.ValueSpecificationVisitor)>(v);
v = interfaceinvoke v.<org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.valuespecification.InstanceValue: org.eclipse.collections.api.RichIterable _values()>();
v = interfaceinvoke v.<org.eclipse.collections.api.RichIterable: java.lang.Object getFirst()>();
v = interfaceinvoke v.<org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.function.LambdaFunction: org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.generics.GenericType _classifierGenericType()>();
v = interfaceinvoke v.<org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.generics.GenericType: org.eclipse.collections.api.RichIterable _typeArguments()>();
v = interfaceinvoke v.<org.eclipse.collections.api.RichIterable: java.lang.Object getFirst()>();
v = interfaceinvoke v.<org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.generics.GenericType: org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.Type _rawType()>();
v = v.<org.finos.legend.engine.protocol.pure.v.model.valueSpecification.raw.classInstance.relation.ColSpec: org.finos.legend.engine.protocol.pure.v.model.valueSpecification.raw.Lambda function2>;
v = v.<org.finos.legend.engine.protocol.pure.v.model.valueSpecification.raw.Lambda: java.util.List parameters>;
v = interfaceinvoke v.<java.util.List: java.lang.Object get(int)>(0);
v = v.<org.finos.legend.engine.protocol.pure.v.model.valueSpecification.Variable: java.lang.String name>;
v = interfaceinvoke v.<org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.FunctionType: org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.generics.GenericType _returnType()>();
v = virtualinvoke v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel: org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.multiplicity.Multiplicity getMultiplicity(java.lang.String)>("zeroMany");
v = staticinvoke <org.finos.legend.engine.repl.autocomplete.handlers.GroupByHandler: org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.valuespecification.VariableExpression buildTypedVariable(org.finos.legend.engine.protocol.pure.v.model.valueSpecification.Variable,org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.generics.GenericType,org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.multiplicity.Multiplicity,org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel)>(v, v, v, v);
virtualinvoke v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext: void addInferredVariables(java.lang.String,org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.valuespecification.ValueSpecification)>(v, v);
return;
}
}