## net.sf.saxon.instruct
Class LocationMap

    java.lang.Object
      net.sf.saxon.instruct.LocationMap

All Implemented Interfaces:
  Serializable, LocationProvider

    public class LocationMap

extends Object
implements LocationProvider, Serializable

A LocationMap allocates integer codes to (systemId, lineNumber) pairs. The integer codes are held inside an Expression object to track the location of the expression in the source code

See Also:
  Serialized Form

Constructor Summary
`LocationMap()`

Method Summary
`int` `allocateLocationId(String module, int lineNumber)` Allocate a location identifier to an expression
`int` `getLineNumber(int locationId)` Get the line number corresponding to a locationId
`String` `getSystemId(int locationId)` Get the system identifier corresponding to a locationId

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### LocationMap

    public LocationMap()

Method Detail

### allocateLocationId

    public int allocateLocationId(String module,
                                  int lineNumber)

  Allocate a location identifier to an expression

### getSystemId

    public String getSystemId(int locationId)

  Get the system identifier corresponding to a locationId

  Specified by:
    `getSystemId` in interface `LocationProvider`
  Parameters:
    `locationId` - identifier of the location in question (as passed down the Receiver pipeline)
  Returns:
    the URI of the document or module.

### getLineNumber

    public int getLineNumber(int locationId)

  Get the line number corresponding to a locationId

  Specified by:
    `getLineNumber` in interface `LocationProvider`
  Parameters:
    `locationId` - identifier of the location in question (as passed down the Receiver pipeline)
  Returns:
    the line number within the document or module.

Copyright (C) Michael H. Kay. All rights reserved.