Libraries.Language.Errors.InvalidLocationError Documentation

The InvalidLocationError class is an error or exception that is thrown when an invalid memory location is accessed. For example attempting to access the index 21 in an array that has a size of 10.

Example Code

use Libraries.Language.Errors.InvalidLocationError
use Libraries.Containers.Array

class Main
   action Main
      Array myArray
      check
        integer i = 0
        repeat while i < 20
            myArray:Get(i)
            i = i + 1
        end
      detect e is InvalidLocationError
        output "Error detected: " + e:GetErrorMessage()
      end
   end
end

Inherits from: Libraries.Language.Errors.Error, Libraries.Language.Object

Summary

Actions Summary Table

ActionsDescription
Compare(Libraries.Language.Object object)This action compares two object hash codes and returns a CompareResult.
Equals(Libraries.Language.Object object)This action determines if two objects are equal based on their hash code values.
GetErrorMessage()This action gets the error message of an object.
GetHashCode()This action gets the hash code for an object.
GetStackTrace()This action gets the stack trace of an object.
GetStackTraceMessage()This action puts the error stack trace into a text value and returns it.
OutputStackTrace()This action outputs the errors stack trace to the sodbeans output window.
SetErrorMessage(text message)This action sets the error message for the error.
SetStackTrace(Libraries.Containers.Array<Libraries.System.StackTraceItem> trace)This action sets the stack trace of an error.

Actions Documentation

Compare(Libraries.Language.Object object)

This action compares two object hash codes and returns a CompareResult. The compare result is either larger if this hash code is larger than the object passed as a parameter, smaller, or equal.

Example Code

use Libraries.Language.Support.CompareResult
        Object o
        Object t
        CompareResult result = o:Compare(t)

Parameters

Return

Libraries.Language.Support.CompareResult: The Compare result, Smaller, Equal, or Larger.

Equals(Libraries.Language.Object object)

This action determines if two objects are equal based on their hash code values.

Example Code

use Libraries.Language.Object
        use Libraries.Language.Types.Text
        Object o
        Text t
        boolean result = o:Equals(t)

Parameters

Return

boolean: True if the hash codes are equal and false if they are not equal.

GetErrorMessage()

This action gets the error message of an object.

Example Code

use Libraries.Language.Errors.Error
        Error error
        text message = error:GetErrorMessage()

Return

text: The errors message.

GetHashCode()

This action gets the hash code for an object.

Example Code

Object o
        integer hash = o:GetHashCode()

Return

integer: The integer hash code of the object.

GetStackTrace()

This action gets the stack trace of an object.

Example Code

use Libraries.Containers.Array
        use Libraries.Language.Errors.Error
        use Libraries.System.StackTraceItem
        Array<StackTraceItem> callStack
        Error error
        callStack = error:GetStackTrace()

Return

Libraries.Containers.Array: The errors stack trace.

GetStackTraceMessage()

This action puts the error stack trace into a text value and returns it. class Main action Main check //intentionally throw an undefined error Object o = undefined o:Compare(o) detect e text message = e:GetStackTraceMessage() output message end end end

Return

text:

OutputStackTrace()

This action outputs the errors stack trace to the sodbeans output window.

Example Code

class Main
            action Main
                check
                    //intentionally throw an undefined error
                    Object o = undefined
                    o:Compare(o)
                detect e
                    e:OutputStackTrace()
                end
            end
        end

SetErrorMessage(text message)

This action sets the error message for the error.

Example Code

use Libraries.Language.Errors.Error
        Error error
        error:SetErrorMessage("An error has occurred.")

Parameters

SetStackTrace(Libraries.Containers.Array<Libraries.System.StackTraceItem> trace)

This action sets the stack trace of an error.

Example Code

use Libraries.Containers.Array
        use Libraries.Language.Errors.Error
        use Libraries.System.StackTraceItem
        Array<StackTraceItem> callStack
        Error error
        error:SetStackTrace(callStack)

Parameters