Class SmithyPattern.Segment

java.lang.Object
software.amazon.smithy.model.pattern.SmithyPattern.Segment
Enclosing class:
SmithyPattern

public static final class SmithyPattern.Segment extends Object
Segment within a SmithyPattern.
  • Constructor Details

  • Method Details

    • parse

      public static SmithyPattern.Segment parse(String content, int offset)
      Parse a segment from the given offset.
      Parameters:
      content - Content of the segment.
      offset - Character offset where the segment starts in the containing pattern.
      Returns:
      Returns the created segment.
      Throws:
      InvalidPatternException - if the segment is invalid.
    • getContent

      public String getContent()
      Get the content of the segment.

      The return value contains the segment in its entirety for non-labels, and the label name for both labels and greedy labels. For example, given a segment of "{label+}", the return value of getContent would be "label".

      Returns:
      Content of the segment.
    • isLabel

      public boolean isLabel()
      Returns:
      True if the segment is a label.
    • isGreedyLabel

      public boolean isGreedyLabel()
      Returns:
      True if the segment is a greedy label.
    • toString

      public String toString()
      Get the segment as a literal value to be used in a pattern.

      Unlike the result of getContent(), the return value of toString includes braces for labels and "+" for greedy labels.

      Overrides:
      toString in class Object
      Returns:
      The literal segment.
    • equals

      public boolean equals(Object other)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object