Class QualifiedNameValueConverter

  • All Implemented Interfaces:
    IValueConverter<java.lang.String>
    Direct Known Subclasses:
    QualifiedNameInStaticImportValueConverter

    public class QualifiedNameValueConverter
    extends AbstractValueConverter<java.lang.String>
    A value converter for qualified names consisting of segments or wildcard literals separated by namespace delimiters. Delegates to another value converter for the segments, thus enabling individual quoting of segments.
    • Field Detail

      • delegateConverter

        protected IValueConverter<java.lang.Object> delegateConverter
        Since:
        2.7
      • fullWildcardLiteral

        protected java.lang.String fullWildcardLiteral
    • Constructor Detail

      • QualifiedNameValueConverter

        public QualifiedNameValueConverter()
    • Method Detail

      • getStringNamespaceDelimiter

        protected java.lang.String getStringNamespaceDelimiter()
        Returns the used delimiter in the concrete syntax.
        Returns:
        the delimiter in the concrete syntax.
      • getValueNamespaceDelimiter

        protected java.lang.String getValueNamespaceDelimiter()
        Returns the used delimiter in the AST.
        Returns:
        the delimiter in the AST.
      • getWildcardLiteral

        protected java.lang.String getWildcardLiteral()
      • getDelegateRuleName

        protected java.lang.String getDelegateRuleName()
      • toString

        public java.lang.String toString​(java.lang.String value)
        Description copied from interface: IValueConverter
        Transforms the given value to a string that is conformant to the expected terminal or data type rule.
        Parameters:
        value - the to-be-transformed value
        Returns:
        a string represenation for that value.
      • toValue

        public java.lang.String toValue​(java.lang.String string,
                                        INode node)
                                 throws ValueConverterException
        Description copied from interface: IValueConverter

        Creates a value from the given input. The input is conformant to a data type or terminal rule.

        The given string or node may be null but not both of them.

        Parameters:
        string - the string that was inferred from the node. Usually the node's text but may be reduced to the parts of the node that are not hidden.
        node - the parsed node including hidden parts.
        Returns:
        the new value or null.
        Throws:
        ValueConverterException - indicates that the string or node did not fulfil the expected format.
      • isDelegateRuleCall

        protected boolean isDelegateRuleCall​(org.eclipse.emf.ecore.EObject grammarElement)
      • isWildcardLiteral

        protected boolean isWildcardLiteral​(org.eclipse.emf.ecore.EObject grammarElement)
      • getFullWildcardLiteral

        protected java.lang.String getFullWildcardLiteral()
      • delegateToString

        protected java.lang.String delegateToString​(java.lang.String segment)
      • delegateToValue

        protected java.lang.String delegateToValue​(ILeafNode leafNode)