Package org.apache.sysds.parser

## Class ParseException

- java.lang.Object
- - java.lang.Throwable
  - - java.lang.Exception
    - - java.lang.RuntimeException
      - - org.apache.sysds.api.DMLException
        - - org.apache.sysds.parser.ParseException

All Implemented Interfaces:
  `Serializable`

    public class ParseException
    extends DMLException

This exception is thrown when parse issues are encountered.

See Also:
  Serialized Form

### Field Summary

### Fields inherited from class org.apache.sysds.api.DMLException

`ERROR_MSG_DELIMITER`

### Constructor Summary

Constructors
`ParseException()`
`ParseException​(String message)`
`ParseException​(String message, Exception e)`
`ParseException​(List<CustomErrorListener.ParseIssue> parseIssues, String scriptString)` This constructor takes a list of parse issues that were generated during script parsing and the original DML/PyDML script String.

### Method Summary

All Methods Instance Methods Concrete Methods
`String` `getMessage()` Obtain the exception message.
`List<CustomErrorListener.ParseIssue>` `getParseIssues()` Obtain the list of parse issues that occurred.
`String` `getScriptString()` Obtain the original DML/PyDML script string.
`boolean` `hasParseIssues()` Does this ParseException contain a list of parse issues?
`void` `setParseIssues​(List<CustomErrorListener.ParseIssue> parseIssues)` Set the list of parse issues.
`void` `setScriptString​(String scriptString)` Set the original DML/PyDML script string.

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

`addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString`

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

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

### Constructor Detail

#### ParseException

    public ParseException()

#### ParseException

    public ParseException​(String message)

#### ParseException

    public ParseException​(String message,
                          Exception e)

#### ParseException

    public ParseException​(List<CustomErrorListener.ParseIssue> parseIssues,
                          String scriptString)

This constructor takes a list of parse issues that were generated during script parsing and the original DML/PyDML script String.

Parameters:
  `parseIssues` - List of parse issues (syntax errors, validation errors, and validation warnings) generated during parsing.
  `scriptString` - The DML/PyDML script String.

### Method Detail

#### getParseIssues

    public List<CustomErrorListener.ParseIssue> getParseIssues()

Obtain the list of parse issues that occurred.

Returns:
  the list of parse issues

#### setParseIssues

    public void setParseIssues​(List<CustomErrorListener.ParseIssue> parseIssues)

Set the list of parse issues.

Parameters:
  `parseIssues` - the list of parse issues

#### getScriptString

    public String getScriptString()

Obtain the original DML/PyDML script string.

Returns:
  the original DML/PyDML script string

#### setScriptString

    public void setScriptString​(String scriptString)

Set the original DML/PyDML script string.

Parameters:
  `scriptString` - the original DML/PyDML script string

#### hasParseIssues

    public boolean hasParseIssues()

Does this ParseException contain a list of parse issues?

Returns:
  `true` if the list of parse issues exists and is greater than 0, `false` otherwise

#### getMessage

    public String getMessage()

Obtain the exception message. If there is a list of parse issues, these are used to generate the exception message.

Overrides:
  `getMessage` in class `Throwable`