# Package com.oracle.truffle.api.source

Interface Summary
BytesDecoder: For a language where strings do not map into Java strings, provides utilities to find line endings and to decode raw bytes into an approximate representation for tools to display.
BytesDecoder.LineMarker
LineLocation: A specification for a location in guest language source, expressed as a line number in a specific instance of `Source`, suitable for hash table keys with equality defined in terms of content.
SourceSection: Description of contiguous section of text within a `Source` of program code; supports multiple modes of access to the text and its location.

Class Summary
BytesDecoder.UTF8BytesDecoder
NullSourceSection: A special subtype of `SourceSection` that represents unavailable source, e.g.
Source: Representation of a guest language source code unit and its contents.