Interface IAttribute


  • public interface IAttribute

    Interface defining an attribute contained in a tag.

    Container tags are implementations of IProcessableElementTag.

    Note that any implementations of this interface should be immutable.

    Since:
    3.0.0
    Author:
    Daniel Fernández
    • Method Detail

      • getAttributeCompleteName

        String getAttributeCompleteName()

        Returns the complete name of the attribute, exactly as it was written in the original template (if it did appear there).

        Returns:
        the complete name.
      • getAttributeDefinition

        AttributeDefinition getAttributeDefinition()

        Returns the AttributeDefinition corresponding to this attribute.

        The attribute definition contains several metadata related to the attribute. For example, if the template mode is TemplateMode.HTML, an attribute definition could specify whether the attribute is boolean (represents a true/false value by appearing or not appearing at a specific tag).

        Returns:
        the attribute definition.
      • getOperator

        String getOperator()

        Returns the operator specified for this attribute.

        The operator itself, if present, is always an equals sign (=), but the reason this is specified as a separate field is that it could be surrounded by white space, which should be respected in output when present at the input template.

        If the attribute is specified without a value at all (and therefore no operator either), this method will return null.

        Returns:
        the attribute operator (might be null if no value specified).
      • getValue

        String getValue()

        Returns the value of this attribute, or null if it has none.

        A null-valued attribute is an attribute of which only the name has been specified (only allowed in HTML mode).

        Returns:
        the value of this attribute, or null if it has none.
      • getValueQuotes

        AttributeValueQuotes getValueQuotes()

        Returns the type of quotes surrounding the attribute value.

        Returns:
        the AttributeValueQuotes value representing the attribute value quotes (might be null).
      • hasLocation

        boolean hasLocation()

        Checks whether this attribute contains location information (template name, line and column).

        Only attributes that are generated during the parsing of templates contain location info, locating them in their original template. All attributes generated during template processing and not originally present at the template do not contain this location data.

        Returns:
        whether the attribute contains location data or not.
      • getTemplateName

        String getTemplateName()

        Returns the name of the template from which parsing this attribute was originally created.

        Returns:
        the name of the template
      • getLine

        int getLine()

        Returns the line at which this attribute can be found in the template specified by getTemplateName().

        Returns:
        the line number, starting in 1.
      • getCol

        int getCol()

        Returns the column at which this attribute can be found in the template specified by getTemplateName().

        Returns:
        the column number, starting in 1.