Class BlockStatePropertyExpression<TYPE,ARGUMENT extends IScratchArgument<ILevelEnvironment,TYPE>,PARAMETER extends IScratchParameter<ILevelEnvironment,TYPE,ARGUMENT>,EXPRESSION extends BlockStatePropertyExpression<TYPE,ARGUMENT,PARAMETER,EXPRESSION>>

java.lang.Object
com.petrolpark.core.scratch.symbol.ScratchSymbol<ILevelEnvironment,ScratchArguments.And<ILevelEnvironment,net.minecraft.core.BlockPos,ExpressionArgument<ILevelEnvironment,net.minecraft.core.BlockPos>,ScratchArguments.And<ILevelEnvironment,String,ExpressionOrLiteralArgument<ILevelEnvironment,String>,ScratchArguments.Just<ILevelEnvironment,TYPE,ARGUMENT>>>,ScratchParameters.And<ILevelEnvironment,net.minecraft.core.BlockPos,ExpressionArgument<ILevelEnvironment,net.minecraft.core.BlockPos>,ExpressionArgument.ExpressionParameter<ILevelEnvironment,net.minecraft.core.BlockPos>,ScratchArguments.And<ILevelEnvironment,String,ExpressionOrLiteralArgument<ILevelEnvironment,String>,ScratchArguments.Just<ILevelEnvironment,TYPE,ARGUMENT>>,ScratchParameters.And<ILevelEnvironment,String,ExpressionOrLiteralArgument<ILevelEnvironment,String>,ExpressionOrLiteralArgument.ExpressionOrLiteralParameter<ILevelEnvironment,String>,ScratchArguments.Just<ILevelEnvironment,TYPE,ARGUMENT>,ScratchParameters.Just<ILevelEnvironment,TYPE,ARGUMENT,PARAMETER>>>>
com.petrolpark.core.scratch.symbol.expression.ScratchExpression<ILevelEnvironment,TYPE,ScratchArguments.And<ILevelEnvironment,net.minecraft.core.BlockPos,ExpressionArgument<ILevelEnvironment,net.minecraft.core.BlockPos>,ScratchArguments.And<ILevelEnvironment,String,ExpressionOrLiteralArgument<ILevelEnvironment,String>,ScratchArguments.Just<ILevelEnvironment,TYPE,ARGUMENT>>>,ScratchParameters.And<ILevelEnvironment,net.minecraft.core.BlockPos,ExpressionArgument<ILevelEnvironment,net.minecraft.core.BlockPos>,ExpressionArgument.ExpressionParameter<ILevelEnvironment,net.minecraft.core.BlockPos>,ScratchArguments.And<ILevelEnvironment,String,ExpressionOrLiteralArgument<ILevelEnvironment,String>,ScratchArguments.Just<ILevelEnvironment,TYPE,ARGUMENT>>,ScratchParameters.And<ILevelEnvironment,String,ExpressionOrLiteralArgument<ILevelEnvironment,String>,ExpressionOrLiteralArgument.ExpressionOrLiteralParameter<ILevelEnvironment,String>,ScratchArguments.Just<ILevelEnvironment,TYPE,ARGUMENT>,ScratchParameters.Just<ILevelEnvironment,TYPE,ARGUMENT,PARAMETER>>>>
com.petrolpark.core.scratch.symbol.expression.SimpleExpressionType<ILevelEnvironment,TYPE,ScratchArguments.And<ILevelEnvironment,net.minecraft.core.BlockPos,ExpressionArgument<ILevelEnvironment,net.minecraft.core.BlockPos>,ScratchArguments.And<ILevelEnvironment,String,ExpressionOrLiteralArgument<ILevelEnvironment,String>,ScratchArguments.Just<ILevelEnvironment,TYPE,ARGUMENT>>>,ScratchParameters.And<ILevelEnvironment,net.minecraft.core.BlockPos,ExpressionArgument<ILevelEnvironment,net.minecraft.core.BlockPos>,ExpressionArgument.ExpressionParameter<ILevelEnvironment,net.minecraft.core.BlockPos>,ScratchArguments.And<ILevelEnvironment,String,ExpressionOrLiteralArgument<ILevelEnvironment,String>,ScratchArguments.Just<ILevelEnvironment,TYPE,ARGUMENT>>,ScratchParameters.And<ILevelEnvironment,String,ExpressionOrLiteralArgument<ILevelEnvironment,String>,ExpressionOrLiteralArgument.ExpressionOrLiteralParameter<ILevelEnvironment,String>,ScratchArguments.Just<ILevelEnvironment,TYPE,ARGUMENT>,ScratchParameters.Just<ILevelEnvironment,TYPE,ARGUMENT,PARAMETER>>>,EXPRESSION>
com.petrolpark.core.scratch.symbol.expression.TernaryExpressionType<ILevelEnvironment,TYPE,net.minecraft.core.BlockPos,ExpressionArgument<ILevelEnvironment,net.minecraft.core.BlockPos>,ExpressionArgument.ExpressionParameter<ILevelEnvironment,net.minecraft.core.BlockPos>,String,ExpressionOrLiteralArgument<ILevelEnvironment,String>,ExpressionOrLiteralArgument.ExpressionOrLiteralParameter<ILevelEnvironment,String>,TYPE,ARGUMENT,PARAMETER,EXPRESSION>
com.petrolpark.core.scratch.symbol.expression.world.block.BlockStatePropertyExpression<TYPE,ARGUMENT,PARAMETER,EXPRESSION>
All Implemented Interfaces:
IScratchExpression<ILevelEnvironment,TYPE,ScratchArguments.And<ILevelEnvironment,net.minecraft.core.BlockPos,ExpressionArgument<ILevelEnvironment,net.minecraft.core.BlockPos>,ScratchArguments.And<ILevelEnvironment,String,ExpressionOrLiteralArgument<ILevelEnvironment,String>,ScratchArguments.Just<ILevelEnvironment,TYPE,ARGUMENT>>>,ScratchParameters.And<ILevelEnvironment,net.minecraft.core.BlockPos,ExpressionArgument<ILevelEnvironment,net.minecraft.core.BlockPos>,ExpressionArgument.ExpressionParameter<ILevelEnvironment,net.minecraft.core.BlockPos>,ScratchArguments.And<ILevelEnvironment,String,ExpressionOrLiteralArgument<ILevelEnvironment,String>,ScratchArguments.Just<ILevelEnvironment,TYPE,ARGUMENT>>,ScratchParameters.And<ILevelEnvironment,String,ExpressionOrLiteralArgument<ILevelEnvironment,String>,ExpressionOrLiteralArgument.ExpressionOrLiteralParameter<ILevelEnvironment,String>,ScratchArguments.Just<ILevelEnvironment,TYPE,ARGUMENT>,ScratchParameters.Just<ILevelEnvironment,TYPE,ARGUMENT,PARAMETER>>>>, IScratchExpression.Type<EXPRESSION>, IScratchSymbol<ILevelEnvironment,ScratchArguments.And<ILevelEnvironment,net.minecraft.core.BlockPos,ExpressionArgument<ILevelEnvironment,net.minecraft.core.BlockPos>,ScratchArguments.And<ILevelEnvironment,String,ExpressionOrLiteralArgument<ILevelEnvironment,String>,ScratchArguments.Just<ILevelEnvironment,TYPE,ARGUMENT>>>,ScratchParameters.And<ILevelEnvironment,net.minecraft.core.BlockPos,ExpressionArgument<ILevelEnvironment,net.minecraft.core.BlockPos>,ExpressionArgument.ExpressionParameter<ILevelEnvironment,net.minecraft.core.BlockPos>,ScratchArguments.And<ILevelEnvironment,String,ExpressionOrLiteralArgument<ILevelEnvironment,String>,ScratchArguments.Just<ILevelEnvironment,TYPE,ARGUMENT>>,ScratchParameters.And<ILevelEnvironment,String,ExpressionOrLiteralArgument<ILevelEnvironment,String>,ExpressionOrLiteralArgument.ExpressionOrLiteralParameter<ILevelEnvironment,String>,ScratchArguments.Just<ILevelEnvironment,TYPE,ARGUMENT>,ScratchParameters.Just<ILevelEnvironment,TYPE,ARGUMENT,PARAMETER>>>>, IScratchSymbol.Type<EXPRESSION>
Direct Known Subclasses:
BooleanBlockStatePropertyExpression

public abstract class BlockStatePropertyExpression<TYPE,ARGUMENT extends IScratchArgument<ILevelEnvironment,TYPE>,PARAMETER extends IScratchParameter<ILevelEnvironment,TYPE,ARGUMENT>,EXPRESSION extends BlockStatePropertyExpression<TYPE,ARGUMENT,PARAMETER,EXPRESSION>> extends TernaryExpressionType<ILevelEnvironment,TYPE,net.minecraft.core.BlockPos,ExpressionArgument<ILevelEnvironment,net.minecraft.core.BlockPos>,ExpressionArgument.ExpressionParameter<ILevelEnvironment,net.minecraft.core.BlockPos>,String,ExpressionOrLiteralArgument<ILevelEnvironment,String>,ExpressionOrLiteralArgument.ExpressionOrLiteralParameter<ILevelEnvironment,String>,TYPE,ARGUMENT,PARAMETER,EXPRESSION>