org.kiama

attribution

package attribution

Visibility
  1. Public
  2. All

Type Members

  1. trait Attributable extends Product with Cloneable

    Common functionality for classes whose instances are to be attributed.

    Common functionality for classes whose instances are to be attributed.

    This trait must be extended by all classes for which the node properties such as parent or the attribute shorthand notation -> are desired. Also provides deep and shallow cloning support.

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

    Common functionality for all attributes.

  3. trait AttributionCommon extends AnyRef

    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 with Memoiser

    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 ParamAttributeKey extends AnyRef

    Support for parameterised attributes: argument, node pair comparison.

  6. trait UncachedAttributionCore extends AttributionCommon with Memoiser

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

Value Members

  1. object AttributableSupport

    Support for the Attributable class.

  2. object Attribution extends AttributionCore

    Module for cached attributes.

  3. object AttributionCommonMacros

  4. object AttributionMacros

  5. object Decorators

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

  6. object UncachedAttribution extends UncachedAttributionCore

    Module for uncached attributes.

Ungrouped