Package

org.bitbucket.inkytonik.kiama

attribution

Permalink

package attribution

Visibility
  1. Public
  2. All

Type Members

  1. abstract class Attribute[T, U] extends (T) ⇒ U

    Permalink

    Common functionality for all attributes.

  2. class Attribution extends AttributionCore

    Permalink

    An attribution module.

    An attribution module. Use an instance of this module to encapuslate related attributes. You should ensure that more than one circular attribute evaluation from a single module is not executing at the same time because the current implementation has shared state between related circular attributes. If your attributes are unrelated (i.e., can't possibly call each other) you should base them on different attribution module instances and then it is safe for attributes from different collections to execute in parallel.

  3. trait AttributionCommon extends AnyRef

    Permalink

    Common support for attribution of syntax trees in a functional style.

    Common support for attribution of syntax trees in a functional style. Includes circular and constant attributes but needs to be augmented with basic attributes and parameterised attributes.

  4. trait AttributionCore extends AttributionCommon

    Permalink

    Reusable implementation of attribution of syntax trees in a functional style with attribute values cached so that each value is computed at most once.

  5. class Decorators[T <: Product, R <: T] extends AnyRef

    Permalink

    Decorators are higher-order operations that provide common patterns of tree attribution based on simple attributes or functions.

    Decorators are higher-order operations that provide common patterns of tree attribution based on simple attributes or functions. A Tree must be supplied to give the decorators access to the tree structure.

  6. class ParamAttributeKey extends AnyRef

    Permalink

    Support for parameterised attributes: argument, node pair comparison.

  7. trait UncachedAttributionCore extends AttributionCommon

    Permalink

    Reusable implementation of attribution of syntax trees in a functional style with attribute values computed each time they are accessed.

Value Members

  1. object AttributionCommonMacros

    Permalink
  2. object AttributionCoreMacros

    Permalink
  3. object UncachedAttribution extends UncachedAttributionCore

    Permalink

    Module for uncached attributes.

  4. object UncachedAttributionCoreMacros

    Permalink

Ungrouped