com.google.javascript.rhino.jstype
Class FunctionParamBuilder

java.lang.Object
  extended by com.google.javascript.rhino.jstype.FunctionParamBuilder

public class FunctionParamBuilder
extends Object

A builder for the Rhino Node representing Function parameters.


Constructor Summary
FunctionParamBuilder(JSTypeRegistry registry)
           
 
Method Summary
 boolean addOptionalParams(JSType... types)
          Add optional parameters of the given type to the end of the param list.
 boolean addRequiredParams(JSType... types)
          Add parameters of the given type to the end of the param list.
 boolean addVarArgs(JSType type)
          Add variable arguments to the end of the parameter list.
 Node build()
           
 boolean hasVarArgs()
           
 Node newOptionalParameterFromNode(Node n)
          Copies the parameter specification from the given node, but makes sure it's optional.
 Node newParameterFromNode(Node n)
          Copies the parameter specification from the given node.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FunctionParamBuilder

public FunctionParamBuilder(JSTypeRegistry registry)
Method Detail

addRequiredParams

public boolean addRequiredParams(JSType... types)
Add parameters of the given type to the end of the param list.

Returns:
False if this is called after optional params are added.

addOptionalParams

public boolean addOptionalParams(JSType... types)
Add optional parameters of the given type to the end of the param list.

Parameters:
types - Types for each optional parameter. The builder will make them undefineable.
Returns:
False if this is called after var args are added.

addVarArgs

public boolean addVarArgs(JSType type)
Add variable arguments to the end of the parameter list.

Returns:
False if this is called after var args are added.

newParameterFromNode

public Node newParameterFromNode(Node n)
Copies the parameter specification from the given node.


newOptionalParameterFromNode

public Node newOptionalParameterFromNode(Node n)
Copies the parameter specification from the given node, but makes sure it's optional.


build

public Node build()

hasVarArgs

public boolean hasVarArgs()