/** * Constructor ExpressionFunction creates a new ExpressionFunction instance. * <p> * This constructor assumes all parameter are of the same type. * * @param fieldDeclaration of type Fields * @param expression of type String * @param parameterType of type Class */ @ConstructorProperties({"fieldDeclaration", "expression", "parameterType"}) public ExpressionFunction( Fields fieldDeclaration, String expression, Class parameterType ) { super( fieldDeclaration, expression, parameterType ); verify( fieldDeclaration ); }
/** * Constructor ExpressionFunction creates a new ExpressionFunction instance. * <p> * This constructor assumes all parameter are of the same type. * * @param fieldDeclaration of type Fields * @param expression of type String * @param parameterType of type Class */ @ConstructorProperties({"fieldDeclaration", "expression", "parameterType"}) public ExpressionFunction( Fields fieldDeclaration, String expression, Class parameterType ) { super( fieldDeclaration, expression, parameterType ); verify( fieldDeclaration ); }
/** * Constructor ExpressionFunction creates a new ExpressionFunction instance. * <p> * This constructor expects all parameter type names to be declared with their types. Positional parameters must * be named the same as in the given expression with the "$" sign prepended. * * @param fieldDeclaration of type Fields * @param expression of type String * @param parameterNames of type String[] * @param parameterTypes of type Class[] */ @ConstructorProperties({"fieldDeclaration", "expression", "parameterNames", "parameterTypes"}) public ExpressionFunction( Fields fieldDeclaration, String expression, String[] parameterNames, Class[] parameterTypes ) { super( fieldDeclaration, expression, parameterNames, parameterTypes ); verify( fieldDeclaration ); }
/** * Constructor ExpressionFunction creates a new ExpressionFunction instance. * <p> * This constructor expects all parameter type names to be declared with their types. Positional parameters must * be named the same as in the given expression with the "$" sign prepended. * * @param fieldDeclaration of type Fields * @param expression of type String * @param parameterNames of type String[] * @param parameterTypes of type Class[] */ @ConstructorProperties({"fieldDeclaration", "expression", "parameterNames", "parameterTypes"}) public ExpressionFunction( Fields fieldDeclaration, String expression, String[] parameterNames, Class[] parameterTypes ) { super( fieldDeclaration, expression, parameterNames, parameterTypes ); verify( fieldDeclaration ); }
/** * Constructor ExpressionFunction creates a new ExpressionFunction instance. * <p> * This constructor, when used with incoming arguments that have type information, the argument field * names can be used directly in the the expression, for example {@code a + b }. The type of {@code a} and {@code b} * will be inherited from the incoming argument fields. * <p> * Or, if the incoming argument selector is {@link Fields#NONE}, an expression using only static method calls * or constants can be used. * <p> * This is useful when inserting random numbers for example, {@code (int) (Math.random() * Integer.MAX_VALUE) }. * * @param fieldDeclaration of type Fields * @param expression of type String */ @ConstructorProperties({"fieldDeclaration", "expression"}) public ExpressionFunction( Fields fieldDeclaration, String expression ) { super( fieldDeclaration, expression ); verify( fieldDeclaration ); }
/** * Constructor ExpressionFunction creates a new ExpressionFunction instance. * <p> * This constructor, when used with incoming arguments that have type information, the argument field * names can be used directly in the the expression, for example {@code a + b }. The type of {@code a} and {@code b} * will be inherited from the incoming argument fields. * <p> * Or, if the incoming argument selector is {@link Fields#NONE}, an expression using only static method calls * or constants can be used. * <p> * This is useful when inserting random numbers for example, {@code (int) (Math.random() * Integer.MAX_VALUE) }. * * @param fieldDeclaration of type Fields * @param expression of type String */ @ConstructorProperties({"fieldDeclaration", "expression"}) public ExpressionFunction( Fields fieldDeclaration, String expression ) { super( fieldDeclaration, expression ); verify( fieldDeclaration ); }