Class LambdaMap

All Implemented Interfaces:
JepComponent, PostfixMathCommandI, Serializable

public class LambdaMap extends BinaryFunction implements JepComponent
Apply a lambda function to a list of arguments returning a list

 map(x => x^2, [1,2,3,4,5])
 
Since Jep 4.1 lambda functions with multiple parameters can be used when the items of the list are themselves lists.
map([[a,b]]=>a^b,[[1,1],[2,2],[2,3],[3,2]])
Alternatively, a unary lambda function could be use referring to individual items of the list as x[1], x[2] etc.
map(v=>v[1]^v[2],[[1,1],[2,2],[2,3],[3,2]])
See Also:
  • Constructor Details

    • LambdaMap

      public LambdaMap()
  • Method Details

    • eval

      public Object eval(Object l, Object r) throws EvaluationException
      Description copied from class: BinaryFunction
      Evaluate the function
      Specified by:
      eval in class BinaryFunction
      Parameters:
      l - lhs argument
      r - rhs argument
      Returns:
      the results
      Throws:
      EvaluationException - if the function cannot be evaluated.
    • init

      public void init(Jep jep)
      Description copied from interface: JepComponent
      Initialize the component. This method is called whenever a component is added to Jep. Hence, it allows components to keep track of the other components they may rely on.
      Specified by:
      init in interface JepComponent
      Parameters:
      jep - the current Jep instance
    • getLightWeightInstance

      public JepComponent getLightWeightInstance()
      Description copied from interface: JepComponent
      Gets a light-weight instance suitable for using in multiple threads.
      Specified by:
      getLightWeightInstance in interface JepComponent
      Returns:
      either a new instance, null or 'this'.