public class org.finos.legend.engine.repl.core.commands.Doc extends java.lang.Object implements org.finos.legend.engine.repl.core.Command
{
private final org.finos.legend.engine.repl.client.Client client;
public void <init>(org.finos.legend.engine.repl.client.Client)
{
org.finos.legend.engine.repl.client.Client v;
org.finos.legend.engine.repl.core.commands.Doc v;
v := @this: org.finos.legend.engine.repl.core.commands.Doc;
v := @parameter: org.finos.legend.engine.repl.client.Client;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<org.finos.legend.engine.repl.core.commands.Doc: org.finos.legend.engine.repl.client.Client client> = v;
return;
}
public java.lang.String documentation()
{
org.finos.legend.engine.repl.core.commands.Doc v;
v := @this: org.finos.legend.engine.repl.core.commands.Doc;
return "doc <function>";
}
public java.lang.String description()
{
org.finos.legend.engine.repl.core.commands.Doc v;
v := @this: org.finos.legend.engine.repl.core.commands.Doc;
return "show documentation of the specified Pure function";
}
public boolean process(java.lang.String) throws java.lang.Exception
{
org.finos.legend.engine.repl.core.commands.Doc v;
java.lang.String[] v;
org.finos.legend.engine.repl.client.Client v, v, v, v;
org.eclipse.collections.api.list.MutableList v;
org.finos.legend.pure.m.pct.aggregate.model.FunctionDocumentation v;
java.lang.String v, v, v, v;
boolean v;
v := @this: org.finos.legend.engine.repl.core.commands.Doc;
v := @parameter: java.lang.String;
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("doc");
if v == 0 goto label;
v = virtualinvoke v.<java.lang.String: java.lang.String[] split(java.lang.String)>(" ");
v = v[1];
v = v.<org.finos.legend.engine.repl.core.commands.Doc: org.finos.legend.engine.repl.client.Client client>;
v = virtualinvoke v.<org.finos.legend.engine.repl.client.Client: org.finos.legend.pure.m.pct.aggregate.model.FunctionDocumentation getFunctionDocumentation(java.lang.String)>(v);
if v == null goto label;
v = v.<org.finos.legend.engine.repl.core.commands.Doc: org.finos.legend.engine.repl.client.Client client>;
v = v.<org.finos.legend.engine.repl.core.commands.Doc: org.finos.legend.engine.repl.client.Client client>;
v = virtualinvoke v.<org.finos.legend.engine.repl.client.Client: org.eclipse.collections.api.list.MutableList getDocumentationAdapterKeys()>();
v = staticinvoke <org.finos.legend.engine.repl.shared.DocumentationHelper: java.lang.String generateANSIFunctionDocumentation(org.finos.legend.pure.m.pct.aggregate.model.FunctionDocumentation,org.eclipse.collections.api.list.MutableList)>(v, v);
virtualinvoke v.<org.finos.legend.engine.repl.client.Client: void println(java.lang.String)>(v);
goto label;
label:
v = v.<org.finos.legend.engine.repl.core.commands.Doc: org.finos.legend.engine.repl.client.Client client>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("No documentation found for function: \u0001");
virtualinvoke v.<org.finos.legend.engine.repl.client.Client: void printError(java.lang.String)>(v);
label:
return 1;
label:
return 0;
}
public org.eclipse.collections.api.list.MutableList complete(java.lang.String, org.jline.reader.LineReader, org.jline.reader.ParsedLine)
{
org.jline.reader.LineReader v;
org.finos.legend.engine.repl.core.commands.Doc v;
org.eclipse.collections.api.block.function.Function v;
org.jline.reader.ParsedLine v;
org.finos.legend.engine.repl.client.Client v;
org.eclipse.collections.api.list.MutableList v;
java.util.List v;
java.lang.String v;
boolean v;
v := @this: org.finos.legend.engine.repl.core.commands.Doc;
v := @parameter: java.lang.String;
v := @parameter: org.jline.reader.LineReader;
v := @parameter: org.jline.reader.ParsedLine;
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("doc");
if v == 0 goto label;
v = v.<org.finos.legend.engine.repl.core.commands.Doc: org.finos.legend.engine.repl.client.Client client>;
v = virtualinvoke v.<org.finos.legend.engine.repl.client.Client: java.util.List getDocumentedFunctions()>();
v = staticinvoke <org.finos.legend.engine.repl.core.commands.Doc$init__71: org.eclipse.collections.api.block.function.Function bootstrap$()>();
v = staticinvoke <org.eclipse.collections.impl.utility.ListIterate: org.eclipse.collections.api.list.MutableList collect(java.util.List,org.eclipse.collections.api.block.function.Function)>(v, v);
return v;
label:
return null;
}
}