de.grogra.rgg
Class IntSynth<T>

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

public final class IntSynth<T>
extends java.lang.Object
implements VoidToIntGenerator

Instances of IntSynth are used in the context of the method Library.synthesize(Object, ObjectToObjectGenerator, ObjectToInt). 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 evaluateInt yields the values of the synthesized attributes of object's descendants.

Author:
Ole Kniemeyer

Field Summary
 T object
          The current object.
 
Constructor Summary
IntSynth()
           
 
Method Summary
 void evaluateInt(IntConsumer cons)
          This generator method yields the values of the synthesized attribute for every descendant of object.
 int get(int index)
           
 int size()
           
 void values(IntConsumer cons)
          This method is an alias for evaluateInt(de.grogra.xl.lang.IntConsumer).
 
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

IntSynth

public IntSynth()
Method Detail

evaluateInt

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

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

get

public int get(int index)

size

public int size()

values

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