Class LSPValue

  • All Implemented Interfaces:
    java.lang.AutoCloseable

    public class LSPValue
    extends java.lang.Object
    implements java.lang.AutoCloseable
    General value container. Any value in an LSPModeler can be contained in an instance of this class (integer, double, boolean, string, LSExpression, module, map, function and also non exposed types like files or dates).
    Since:
    10.0
    • Method Detail

      • close

        public void close()

        Releases the reference. If this value was already released, returns immediately and does nothing. Invoking any method on this object after this operation will throw an exception.

        Note: Releasing a reference does not necessarily imply that the underlying value object is destroyed. It is only destroyed if no more references point to it.

        Specified by:
        close in interface java.lang.AutoCloseable
        Since:
        11.0
      • getType

        public LSPType getType()
        Returns the type of the value.
        Returns:
        Type of the value.
        See Also:
        LSPType
      • isInt

        public boolean isInt()
        Returns true if the value is an integer value.
      • isDouble

        public boolean isDouble()
        Returns true if the value is a double value.
      • isBool

        public boolean isBool()
        Returns true if the value is a boolean value.
      • isMap

        public boolean isMap()
        Returns true if the value is an LSPMap.
      • isModule

        public boolean isModule()
        Returns true if the value is an LSPModule.
      • isExpression

        public boolean isExpression()
        Returns true if the value is an LSExpression.
      • isFunction

        public boolean isFunction()
        Returns true if the value is a LSPFunction.
      • isString

        public boolean isString()
        Returns true if the value is a string.
      • isNil

        public boolean isNil()
        Returns true if the value is nil.
      • asInt

        public long asInt()
        Returns the value as an integer. The value must be an integer.
      • asDouble

        public double asDouble()
        Returns the value as a double. The value must be a double.
      • asBool

        public boolean asBool()
        Returns the value as a boolean. The value must be a boolean.
      • asString

        public java.lang.String asString()
        Returns the value as a String. The value must be a string.
      • asMap

        public LSPMap asMap()
        Returns the value as a LSPMap. The value must be a map.
      • asModule

        public LSPModule asModule()
        Returns the value as a LSPModule. The value must be a module.
      • asFunction

        public LSPFunction asFunction()
        Returns the value as a LSPFunction. The value must be a function.
      • asExpression

        public LSExpression asExpression()
        Returns the value as a LSExpression. The value must be an expression.
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object