org.codehaus.groovy.runtime.powerassert

## Class SourceText

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

    public class SourceText
    extends java.lang.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

All Methods Instance Methods Concrete Methods
`int` `getNormalizedColumn(int line, int column)` Returns the column in `getNormalizedText()` corresponding to the given line and column in the original source text.
`java.lang.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 java.lang.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