# Class SetParameterFilter

java.lang.Object
uk.ac.starlink.ttools.filter.BasicFilter
uk.ac.starlink.ttools.filter.SetParameterFilter

All Implemented Interfaces:
  `ProcessingFilter`

public class SetParameterFilter extends BasicFilter
Filter which sets a parameter on the table.

Since:
  2 Aug 2006
Author:
  Mark Taylor

## Constructor Summary

Constructors
Constructor
Description
`SetParameterFilter()`

## Method Summary

Modifier and Type
Method
Description
`ProcessingStep`
`createStep(Iterator<String> argIt)`
Creates a new ProcessingStep based on a sequence of command-line arguments.
`static Object`
`evaluate(String expr, uk.ac.starlink.table.StarTable table, Class<?> clazz, String type)`
Evaluates an expression in the context of a table.
`protected String[]`
`getDescriptionLines()`

### Methods inherited from class BasicFilter

`explainSyntax, getDescription, getName, getUsage`

### Methods inherited from class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### SetParameterFilter

public SetParameterFilter()

## Method Details

### getDescriptionLines

protected String[] getDescriptionLines()

Specified by:
  `getDescriptionLines` in class `BasicFilter`

### createStep

public ProcessingStep createStep(Iterator<String> argIt) throws ArgException
Description copied from interface: `ProcessingFilter`
Creates a new ProcessingStep based on a sequence of command-line arguments. The `argIt` argument is an iterator over the command-line arguments positioned just before any arguments intended for this filter. If legal, any that can be comprehended by this filter should be read (iterated over) and removed, and a `ProcessingStep` should accordingly be returned. In the case of a successful return, it is essential that no arguments other than the ones intended for this filter are read from the iterator.

If the argument list is badly-formed as far as this filter is concerned, an `ArgException` should be thrown.

Parameters:
  `argIt` - iterator over command-line arguments positioned at the first one
Throws:
  `ArgException`

### evaluate

public static Object evaluate(String expr, uk.ac.starlink.table.StarTable table, Class<?> clazz, String type) throws IOException
Evaluates an expression in the context of a table. If a class is specified, the result is guaranteed to be of the type indicated by that class (or an error will be thrown). If no JEL expression can be evaluated, the supplied expression itself will be returned as a string, as long as that is not inconsistent with the requested class.

Parameters:
  `expr` - expression to evaluate
  `table` - evaluation context
  `clazz` - required class of result, or null; a primitive, rather than wrapper, class should be supplied if available
  `type` - user-supplied string corresponding to clazz, or null (used for error messages only)
Throws:
  `IOException`