Modifier and Type | Method and Description |
---|---|
IExpressionNode |
DetailedConfigOption.getAsExpression() |
Modifier and Type | Method and Description |
---|---|
<T extends IExpressionNode> |
NodeStack.push(T node) |
<E extends IExpressionNode> |
FunctionContext.putVariable(java.lang.String name,
E node) |
static <A extends IExpressionNode,B extends IExpressionNode,C extends IExpressionNode,D extends IExpressionNode,E extends IExpressionNode,R extends IExpressionNode> |
NodeInliningHelper.tryInline(R node,
A nodeA,
B nodeB,
C nodeC,
D nodeD,
E nodeE,
NodeInliningHelper.PentaFunction<A,B,C,D,E,R> changer,
NodeInliningHelper.PentaFunction<A,B,C,D,E,R> inlinedChanger) |
static <A extends IExpressionNode,B extends IExpressionNode,C extends IExpressionNode,D extends IExpressionNode,E extends IExpressionNode,R extends IExpressionNode> |
NodeInliningHelper.tryInline(R node,
A nodeA,
B nodeB,
C nodeC,
D nodeD,
E nodeE,
NodeInliningHelper.PentaFunction<A,B,C,D,E,R> changer,
NodeInliningHelper.PentaFunction<A,B,C,D,E,R> inlinedChanger) |
static <A extends IExpressionNode,B extends IExpressionNode,C extends IExpressionNode,D extends IExpressionNode,E extends IExpressionNode,R extends IExpressionNode> |
NodeInliningHelper.tryInline(R node,
A nodeA,
B nodeB,
C nodeC,
D nodeD,
E nodeE,
NodeInliningHelper.PentaFunction<A,B,C,D,E,R> changer,
NodeInliningHelper.PentaFunction<A,B,C,D,E,R> inlinedChanger) |
static <A extends IExpressionNode,B extends IExpressionNode,C extends IExpressionNode,D extends IExpressionNode,E extends IExpressionNode,R extends IExpressionNode> |
NodeInliningHelper.tryInline(R node,
A nodeA,
B nodeB,
C nodeC,
D nodeD,
E nodeE,
NodeInliningHelper.PentaFunction<A,B,C,D,E,R> changer,
NodeInliningHelper.PentaFunction<A,B,C,D,E,R> inlinedChanger) |
static <A extends IExpressionNode,B extends IExpressionNode,C extends IExpressionNode,D extends IExpressionNode,E extends IExpressionNode,R extends IExpressionNode> |
NodeInliningHelper.tryInline(R node,
A nodeA,
B nodeB,
C nodeC,
D nodeD,
E nodeE,
NodeInliningHelper.PentaFunction<A,B,C,D,E,R> changer,
NodeInliningHelper.PentaFunction<A,B,C,D,E,R> inlinedChanger) |
static <A extends IExpressionNode,B extends IExpressionNode,C extends IExpressionNode,D extends IExpressionNode,E extends IExpressionNode,R extends IExpressionNode> |
NodeInliningHelper.tryInline(R node,
A nodeA,
B nodeB,
C nodeC,
D nodeD,
E nodeE,
NodeInliningHelper.PentaFunction<A,B,C,D,E,R> changer,
NodeInliningHelper.PentaFunction<A,B,C,D,E,R> inlinedChanger) |
static <A extends IExpressionNode,B extends IExpressionNode,C extends IExpressionNode,D extends IExpressionNode,R extends IExpressionNode> |
NodeInliningHelper.tryInline(R node,
A nodeA,
B nodeB,
C nodeC,
D nodeD,
NodeInliningHelper.QuadFunction<A,B,C,D,R> changer,
NodeInliningHelper.QuadFunction<A,B,C,D,R> inlinedChanger) |
static <A extends IExpressionNode,B extends IExpressionNode,C extends IExpressionNode,D extends IExpressionNode,R extends IExpressionNode> |
NodeInliningHelper.tryInline(R node,
A nodeA,
B nodeB,
C nodeC,
D nodeD,
NodeInliningHelper.QuadFunction<A,B,C,D,R> changer,
NodeInliningHelper.QuadFunction<A,B,C,D,R> inlinedChanger) |
static <A extends IExpressionNode,B extends IExpressionNode,C extends IExpressionNode,D extends IExpressionNode,R extends IExpressionNode> |
NodeInliningHelper.tryInline(R node,
A nodeA,
B nodeB,
C nodeC,
D nodeD,
NodeInliningHelper.QuadFunction<A,B,C,D,R> changer,
NodeInliningHelper.QuadFunction<A,B,C,D,R> inlinedChanger) |
static <A extends IExpressionNode,B extends IExpressionNode,C extends IExpressionNode,D extends IExpressionNode,R extends IExpressionNode> |
NodeInliningHelper.tryInline(R node,
A nodeA,
B nodeB,
C nodeC,
D nodeD,
NodeInliningHelper.QuadFunction<A,B,C,D,R> changer,
NodeInliningHelper.QuadFunction<A,B,C,D,R> inlinedChanger) |
static <A extends IExpressionNode,B extends IExpressionNode,C extends IExpressionNode,D extends IExpressionNode,R extends IExpressionNode> |
NodeInliningHelper.tryInline(R node,
A nodeA,
B nodeB,
C nodeC,
D nodeD,
NodeInliningHelper.QuadFunction<A,B,C,D,R> changer,
NodeInliningHelper.QuadFunction<A,B,C,D,R> inlinedChanger) |
static <A extends IExpressionNode,B extends IExpressionNode,C extends IExpressionNode,R extends IExpressionNode> |
NodeInliningHelper.tryInline(R node,
A nodeA,
B nodeB,
C nodeC,
NodeInliningHelper.TriFunction<A,B,C,R> changer,
NodeInliningHelper.TriFunction<A,B,C,R> inlinedChanger) |
static <A extends IExpressionNode,B extends IExpressionNode,C extends IExpressionNode,R extends IExpressionNode> |
NodeInliningHelper.tryInline(R node,
A nodeA,
B nodeB,
C nodeC,
NodeInliningHelper.TriFunction<A,B,C,R> changer,
NodeInliningHelper.TriFunction<A,B,C,R> inlinedChanger) |
static <A extends IExpressionNode,B extends IExpressionNode,C extends IExpressionNode,R extends IExpressionNode> |
NodeInliningHelper.tryInline(R node,
A nodeA,
B nodeB,
C nodeC,
NodeInliningHelper.TriFunction<A,B,C,R> changer,
NodeInliningHelper.TriFunction<A,B,C,R> inlinedChanger) |
static <A extends IExpressionNode,B extends IExpressionNode,C extends IExpressionNode,R extends IExpressionNode> |
NodeInliningHelper.tryInline(R node,
A nodeA,
B nodeB,
C nodeC,
NodeInliningHelper.TriFunction<A,B,C,R> changer,
NodeInliningHelper.TriFunction<A,B,C,R> inlinedChanger) |
static <F extends IExpressionNode,T extends IExpressionNode> |
NodeInliningHelper.tryInline(T node,
F subNode,
java.util.function.Function<F,T> changer,
java.util.function.Function<F,T> inlinedChanger)
Attempts to inline a specified node with only 1 input (a unary node)
|
static <F extends IExpressionNode,T extends IExpressionNode> |
NodeInliningHelper.tryInline(T node,
F subNode,
java.util.function.Function<F,T> changer,
java.util.function.Function<F,T> inlinedChanger)
Attempts to inline a specified node with only 1 input (a unary node)
|
static <L extends IExpressionNode,R extends IExpressionNode,T extends IExpressionNode> |
NodeInliningHelper.tryInline(T node,
L subNodeLeft,
R subNodeRight,
java.util.function.BiFunction<L,R,T> changer,
java.util.function.BiFunction<L,R,T> inlinedChanger) |
static <L extends IExpressionNode,R extends IExpressionNode,T extends IExpressionNode> |
NodeInliningHelper.tryInline(T node,
L subNodeLeft,
R subNodeRight,
java.util.function.BiFunction<L,R,T> changer,
java.util.function.BiFunction<L,R,T> inlinedChanger) |
static <L extends IExpressionNode,R extends IExpressionNode,T extends IExpressionNode> |
NodeInliningHelper.tryInline(T node,
L subNodeLeft,
R subNodeRight,
java.util.function.BiFunction<L,R,T> changer,
java.util.function.BiFunction<L,R,T> inlinedChanger) |
Modifier and Type | Method and Description |
---|---|
static IExpressionNode |
InternalCompiler.compileExpression(java.lang.String expression,
FunctionContext context) |
static IExpressionNode |
InternalCompiler.convertBinary(IExpressionNode convert,
IExpressionNode compare) |
IExpressionNode |
FunctionContext.getVariable(java.lang.String name) |
IExpressionNode |
NodeStack.peek() |
IExpressionNode |
NodeStack.pop() |
Modifier and Type | Method and Description |
---|---|
java.util.List<IExpressionNode> |
NodeStack.peek(int count) |
Modifier and Type | Method and Description |
---|---|
static IExpressionNode |
InternalCompiler.convertBinary(IExpressionNode convert,
IExpressionNode compare) |
Constructor and Description |
---|
NodeStack(IExpressionNode... nodes) |
Modifier and Type | Interface and Description |
---|---|
interface |
IConstantNode
Marker interface that means calling evaluate() on this will *always* return the same value.
|
static interface |
IExpressionNode.INodeBoolean |
static interface |
IExpressionNode.INodeDouble |
static interface |
IExpressionNode.INodeLong |
static interface |
IExpressionNode.INodeObject<T> |
static interface |
IExpressionNode.INodeString
Common object types (Provided as functional interfaces, these should NEVER be tested against with instanceof
|
interface |
IVariableNode |
static interface |
IVariableNode.IVariableNodeBoolean |
static interface |
IVariableNode.IVariableNodeDouble |
static interface |
IVariableNode.IVariableNodeLong |
static interface |
IVariableNode.IVariableNodeObject<T> |
Modifier and Type | Method and Description |
---|---|
static IExpressionNode |
NodeTypes.cast(IExpressionNode node,
java.lang.Class<?> to) |
IExpressionNode |
INodeFunc.getNode(INodeStack stack)
Pops values off of the stack to create an expression node.
|
default IExpressionNode |
IExpressionNode.inline() |
default IExpressionNode |
INodeStack.pop(java.lang.Class<?> type) |
Modifier and Type | Method and Description |
---|---|
static IExpressionNode |
NodeTypes.cast(IExpressionNode node,
java.lang.Class<?> to) |
static IConstantNode |
NodeTypes.createConstantNode(IExpressionNode node) |
static java.lang.Class<?> |
NodeTypes.getType(IExpressionNode node) |
void |
IVariableNode.set(IExpressionNode from)
Sets the current value of this node to be the value returned by the given node.
|
default void |
IVariableNode.IVariableNodeLong.set(IExpressionNode from) |
default void |
IVariableNode.IVariableNodeDouble.set(IExpressionNode from) |
default void |
IVariableNode.IVariableNodeBoolean.set(IExpressionNode from) |
default void |
IVariableNode.IVariableNodeObject.set(IExpressionNode from) |
Modifier and Type | Class and Description |
---|---|
class |
NodeCastLongToDouble |
class |
NodeCastToString |
Modifier and Type | Method and Description |
---|---|
static IExpressionNode |
NodeCasting.castToType(IExpressionNode node,
java.lang.Class<?> to) |
Modifier and Type | Method and Description |
---|---|
static IExpressionNode.INodeDouble |
NodeCasting.castToDouble(IExpressionNode node) |
static <T> IExpressionNode.INodeObject<T> |
NodeCasting.castToObject(IExpressionNode node,
java.lang.Class<T> clazz) |
static IExpressionNode.INodeObject<java.lang.String> |
NodeCasting.castToString(IExpressionNode node) |
static IExpressionNode |
NodeCasting.castToType(IExpressionNode node,
java.lang.Class<?> to) |
Constructor and Description |
---|
NodeCastToString(IExpressionNode from) |
Modifier and Type | Class and Description |
---|---|
class |
NodeConditionalBoolean |
class |
NodeConditionalDouble |
class |
NodeConditionalLong |
class |
NodeConditionalObject<T> |
Modifier and Type | Class and Description |
---|---|
protected class |
NodeFuncGeneric.Func |
protected class |
NodeFuncGenericToBoolean.FuncBoolean |
protected class |
NodeFuncGenericToDouble.FuncDouble |
protected class |
NodeFuncGenericToObject.FuncObject |
class |
NodeFuncToBoolean |
class |
NodeFuncToDouble |
class |
NodeFuncToLong |
class |
NodeFuncToObject<T> |
Modifier and Type | Field and Description |
---|---|
protected IExpressionNode[] |
NodeFuncGeneric.Func.realArgs |
Modifier and Type | Method and Description |
---|---|
protected IExpressionNode[] |
NodeFuncGeneric.popArgs(INodeStack stack) |
Modifier and Type | Method and Description |
---|---|
NodeFuncGeneric.InlineType |
NodeFuncGeneric.InlineType.and(IExpressionNode before,
IExpressionNode after) |
protected void |
NodeFuncGeneric.Func.setupEvaluate(IExpressionNode[] nodes) |
protected NodeFuncGeneric.InlineType |
NodeFuncGeneric.Func.setupInline(IExpressionNode[] nodes) |
Constructor and Description |
---|
Func(IExpressionNode[] argsIn) |
FuncBoolean(IExpressionNode[] argsIn) |
FuncDouble(IExpressionNode[] argsIn) |
FuncObject(IExpressionNode[] argsIn) |
NodeFuncGeneric(IExpressionNode node,
java.lang.Class<?>[] types,
IVariableNode[] nodes) |
Modifier and Type | Class and Description |
---|---|
class |
NodeConstantBoolean |
class |
NodeConstantDouble |
class |
NodeConstantLong |
class |
NodeConstantObject<T> |
class |
NodeVariable |
class |
NodeVariableBoolean |
class |
NodeVariableDouble |
class |
NodeVariableLong |
class |
NodeVariableObject<T> |
Modifier and Type | Method and Description |
---|---|
IExpressionNode |
NodeStateful.IGetterFunc.createGetter(IVariableNode variable,
IVariableNode last) |
Modifier and Type | Method and Description |
---|---|
void |
NodeStateful.setRounder(IExpressionNode rounder) |
void |
NodeStateful.setSource(IExpressionNode source) |
void |
ITickableNode.Source.setSource(IExpressionNode node) |
void |
NodeUpdatable.setSource(IExpressionNode source) |
Constructor and Description |
---|
NodeUpdatable(java.lang.String name,
IExpressionNode source) |
Modifier and Type | Class and Description |
---|---|
class |
GuiProperty |
class |
GuiPropertyBoolean |
Modifier and Type | Method and Description |
---|---|
static IVariableNode |
GuiConfigManager.getOrAddProperty(net.minecraft.util.ResourceLocation gui,
java.lang.String name,
IExpressionNode value) |