org.eclipse.xtext.util.formallang
Class ProductionUtil

java.lang.Object
  extended by org.eclipse.xtext.util.formallang.ProductionUtil

public class ProductionUtil
extends java.lang.Object

Author:
Moritz Eysholdt - Initial contribution and API

Constructor Summary
ProductionUtil()
           
 
Method Summary
protected
<S,D,T> java.util.List<D>
clone(Production<S,T> grammarAdapter, java.lang.Iterable<S> eles, ProductionFactory<D,T> factory)
           
<S,D,T> D
clone(Production<S,T> production, ProductionFactory<D,T> factory)
           
<S,D,T> D
clone(Production<S,T> production, S ele, ProductionFactory<D,T> factory)
           
<E,T> E
find(Production<E,T> production, E element, com.google.common.base.Predicate<E> matches)
           
<E,T> E
find(Production<E,T> production, com.google.common.base.Predicate<E> matches)
           
<E,T> java.util.List<E>
findAll(Production<E,T> production, E element, com.google.common.base.Predicate<E> matches)
           
protected
<E,T> void
findAll(Production<E,T> production, E element, com.google.common.base.Predicate<E> matches, java.util.List<E> result)
           
<E,T> E
findByToken(Production<E,T> production, E element, com.google.common.base.Predicate<T> matches)
           
<E,T> E
findByToken(Production<E,T> production, com.google.common.base.Predicate<T> matches)
           
<E,T> E
findByToken(Production<E,T> production, T matches)
           
<E,T> java.util.List<E>
getAllChildren(Production<E,T> production, E element)
           
protected
<E,T> void
getAllChildren(Production<E,T> production, E element, java.util.List<E> result)
           
<E,T> java.lang.Iterable<E>
getChildren(Production<E,T> production, E element)
           
<E,T> E
getRoot(Production<E,T> prod, E element)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ProductionUtil

public ProductionUtil()
Method Detail

clone

protected <S,D,T> java.util.List<D> clone(Production<S,T> grammarAdapter,
                                          java.lang.Iterable<S> eles,
                                          ProductionFactory<D,T> factory)

clone

public <S,D,T> D clone(Production<S,T> production,
                       ProductionFactory<D,T> factory)

clone

public <S,D,T> D clone(Production<S,T> production,
                       S ele,
                       ProductionFactory<D,T> factory)

find

public <E,T> E find(Production<E,T> production,
                    E element,
                    com.google.common.base.Predicate<E> matches)

findAll

public <E,T> java.util.List<E> findAll(Production<E,T> production,
                                       E element,
                                       com.google.common.base.Predicate<E> matches)

findAll

protected <E,T> void findAll(Production<E,T> production,
                             E element,
                             com.google.common.base.Predicate<E> matches,
                             java.util.List<E> result)

find

public <E,T> E find(Production<E,T> production,
                    com.google.common.base.Predicate<E> matches)

findByToken

public <E,T> E findByToken(Production<E,T> production,
                           E element,
                           com.google.common.base.Predicate<T> matches)

findByToken

public <E,T> E findByToken(Production<E,T> production,
                           com.google.common.base.Predicate<T> matches)

findByToken

public <E,T> E findByToken(Production<E,T> production,
                           T matches)

getAllChildren

protected <E,T> void getAllChildren(Production<E,T> production,
                                    E element,
                                    java.util.List<E> result)

getAllChildren

public <E,T> java.util.List<E> getAllChildren(Production<E,T> production,
                                              E element)

getRoot

public <E,T> E getRoot(Production<E,T> prod,
                       E element)

getChildren

public <E,T> java.lang.Iterable<E> getChildren(Production<E,T> production,
                                               E element)