JexlInfo (Apache Commons JEXL 3.6.3 API)
Description: declaration: package: org.apache.commons.jexl3, class: JexlInfo

Package org.apache.commons.jexl3

# Class JexlInfo

java.lang.Object
org.apache.commons.jexl3.JexlInfo

public class JexlInfo extends Object
Helper class to carry information such as a url/file name, line and column for debugging information reporting.

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `static interface`
  `JexlInfo.Detail`
  Describes errors more precisely.

- ## Constructor Summary

  Constructors
  Modifier
  Constructor
  Description
  ``
  `JexlInfo()`
  Create an information structure for dynamic set/get/invoke/new.
  ``
  `JexlInfo(String source, int l, int c)`
  Create info.
  `protected`
  `JexlInfo(JexlInfo copy)`
  The copy constructor.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `JexlInfo`
  `at(int l, int c)`
  Creates info reusing the name.
  `JexlInfo`
  `detach()`
  Gets this instance or a copy without any decorations
  `static JexlInfo`
  `from(JexlScript script)`
  Gets the info from a script.
  `final int`
  `getColumn()`
  Gets the column number.
  `JexlInfo.Detail`
  `getDetail()`
  Gets error detail
  `final int`
  `getLine()`
  Gets the line number.
  `final String`
  `getName()`
  Gets the file/script/url name.
  `String`
  `toString()`
  Formats this info in the form 'name@line:column'.

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

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

- ## Constructor Details

  - ### JexlInfo

    public JexlInfo()
    Create an information structure for dynamic set/get/invoke/new.

    This gathers the class, method and line number of the first calling method outside of o.a.c.jexl3.

  - ### JexlInfo

    protected JexlInfo(JexlInfo copy)
    The copy constructor.
    Parameters:
      `copy` - the instance to copy

  - ### JexlInfo

    public JexlInfo(String source, int l, int c)
    Create info.
    Parameters:
      `source` - source name
      `l` - line number
      `c` - column number

- ## Method Details

  - ### from

    public static JexlInfo from(JexlScript script)
    Gets the info from a script.
    Parameters:
      `script` - the script
    Returns:
      the info

  - ### at

    public JexlInfo at(int l, int c)
    Creates info reusing the name.
    Parameters:
      `l` - the line
      `c` - the column
    Returns:
      a new info instance

  - ### detach

    public JexlInfo detach()
    Gets this instance or a copy without any decorations
    Returns:
      `this` instance or a copy without any decorations

  - ### getColumn

    public final int getColumn()
    Gets the column number.
    Returns:
      the column.

  - ### getDetail

    public JexlInfo.Detail getDetail()
    Gets error detail
    Returns:
      the detailed information in case of an error

  - ### getLine

    public final int getLine()
    Gets the line number.
    Returns:
      line number.

  - ### getName

    public final String getName()
    Gets the file/script/url name.
    Returns:
      template name

  - ### toString

    public String toString()
    Formats this info in the form 'name@line:column'.
    Overrides:
      `toString` in class `Object`
    Returns:
      the formatted info