org.codehaus.groovy.runtime.powerassert

## Class SourceText

- java.lang.Object
- - org.codehaus.groovy.runtime.powerassert.SourceText

-     public class SourceText
      extends Object

  Provides the source text for an assertion statement and translates coordinates in the original source text to coordinates relative to the assertion's (normalized) source text.
  Author:
    Peter Niederwieser

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `SourceText(AssertStatement stat, SourceUnit sourceUnit, Janitor janitor)` Constructs a `SourceText` by reading the given assertion's source text from the given source unit.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `getNormalizedColumn(int line, int column)` Returns the column in `getNormalizedText()` corresponding to the given line and column in the original source text.
    `String` | `getNormalizedText()` Returns the assertion's source text after removing line breaks.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### SourceText

          public SourceText(AssertStatement stat,
                    SourceUnit sourceUnit,
                    Janitor janitor)

      Constructs a `SourceText` by reading the given assertion's source text from the given source unit.
      Parameters:
        `stat` - an assertion statement
        `sourceUnit` - the source unit containing the assertion statement
        `janitor` - a `Janitor` for cleaning up reader sources

  - ### Method Detail

    - #### getNormalizedText

          public String getNormalizedText()

      Returns the assertion's source text after removing line breaks.

      Limitation: Line comments within the assertion's source text are not handled.

      Returns:
        the assertion's source text after removing line breaks.

    - #### getNormalizedColumn

          public int getNormalizedColumn(int line,
                                int column)

      Returns the column in `getNormalizedText()` corresponding to the given line and column in the original source text. The first character in the normalized text has column 1.
      Parameters:
        `line` - a line number
        `column` - a column number
      Returns:
        the column in getNormalizedText() corresponding to the given line and column in the original source text