public abstract class VncFunction extends VncVal implements IVncFunction, INamespaceAware
| Modifier and Type | Class and Description |
|---|---|
static class |
VncFunction.MetaBuilder |
| Modifier and Type | Field and Description |
|---|---|
static VncKeyword |
TYPE_FUNCTION |
static VncKeyword |
TYPE_MACRO |
| Constructor and Description |
|---|
VncFunction(java.lang.String name) |
VncFunction(java.lang.String name,
boolean macro) |
VncFunction(java.lang.String name,
VncVal meta) |
VncFunction(java.lang.String name,
VncVector params) |
VncFunction(java.lang.String name,
VncVector params,
boolean macro) |
VncFunction(java.lang.String name,
VncVector params,
boolean macro,
VncVal meta) |
VncFunction(java.lang.String name,
VncVector params,
VncVal meta) |
compareTo, equals, getMetaVal, getMetaVal, getWrappingTypeDef, hashCode, isVncList, isWrapped, toString, wrappublic static final VncKeyword TYPE_FUNCTION
public static final VncKeyword TYPE_MACRO
public VncFunction(java.lang.String name)
public VncFunction(java.lang.String name,
boolean macro)
public VncFunction(java.lang.String name,
VncVal meta)
public VncFunction(java.lang.String name,
VncVector params)
public VncFunction(java.lang.String name,
VncVector params,
boolean macro)
public VncFunction withMeta(VncVal meta)
public VncKeyword getType()
public VncKeyword getSupertype()
getSupertype in class VncValpublic java.util.List<VncKeyword> getAllSupertypes()
getAllSupertypes in class VncValpublic abstract VncVal apply(VncList args)
apply in interface IVncFunctionpublic boolean isRedefinable()
public VncVector getParams()
public boolean isMacro()
public boolean isAnonymous()
isAnonymous in interface IVncFunctionpublic java.lang.String getSimpleName()
getSimpleName in interface INamespaceAwarepublic java.lang.String getQualifiedName()
getQualifiedName in interface INamespaceAwarepublic java.lang.String getNamespace()
getNamespace in interface INamespaceAwarepublic boolean hasNamespace()
hasNamespace in interface INamespaceAwarepublic VncList getArgLists()
public VncVal getDoc()
public VncList getExamples()
public int getFixedArgsCount()
public boolean hasVariadicArgs()
public VncVal getBody()
public java.lang.Object convertToJavaObject()
convertToJavaObject in class VncValpublic java.lang.String toString()
toString in class java.lang.Objectpublic static java.lang.String createAnonymousFuncName()
public static java.lang.String createAnonymousFuncName(java.lang.String name)
public static boolean isAnonymousFuncName(java.lang.String name)
public static VncFunction.MetaBuilder meta()
public static VncVal applyWithMeter(IVncFunction fn, VncList args, MeterRegistry meterRegistry)