de.grogra.rgg
Class CharSynth<T>

java.lang.Object
  extended by de.grogra.rgg.CharSynth<T>
Type Parameters:
T - the type of objects for which synthesized attributes are computed
All Implemented Interfaces:
VoidToCharGenerator

public final class CharSynth<T>
extends java.lang.Object
implements VoidToCharGenerator

Instances of CharSynth are used in the context of the method Library.synthesize(Object, ObjectToObjectGenerator, ObjectToChar). and represent the information needed for the computation of a synthesized attribute: object is the current object for which the synthesized attribute has to be computed, the generator method evaluateChar yields the values of the synthesized attributes of object's descendants.

Author:
Ole Kniemeyer

Field Summary
 T object
          The current object.
 
Constructor Summary
CharSynth()
           
 
Method Summary
 void evaluateChar(CharConsumer cons)
          This generator method yields the values of the synthesized attribute for every descendant of object.
 char get(int index)
           
 int size()
           
 void values(CharConsumer cons)
          This method is an alias for evaluateChar(de.grogra.xl.lang.CharConsumer).
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

object

public T object
The current object.

Constructor Detail

CharSynth

public CharSynth()
Method Detail

evaluateChar

public void evaluateChar(CharConsumer cons)
This generator method yields the values of the synthesized attribute for every descendant of object. These values have been computed previously.

Specified by:
evaluateChar in interface VoidToCharGenerator
Parameters:
cons - the consumer which receives the values of synthesized attribute of descendants

get

public char get(int index)

size

public int size()

values

public void values(CharConsumer cons)
This method is an alias for evaluateChar(de.grogra.xl.lang.CharConsumer).