Class VmMap

  • All Implemented Interfaces:
    java.lang.Iterable<java.util.Map.Entry<java.lang.Object,​java.lang.Object>>

    public final class VmMap
    extends VmValue
    implements java.lang.Iterable<java.util.Map.Entry<java.lang.Object,​java.lang.Object>>
    • Field Detail

      • EMPTY

        public static final VmMap EMPTY
    • Method Detail

      • create

        public static VmMap create​(org.organicdesign.fp.collections.ImMap<java.lang.Object,​java.lang.Object> map,
                                   org.organicdesign.fp.collections.RrbTree.ImRrbt<java.lang.Object> keyOrder)
      • createFromConstantNodes

        public static VmMap createFromConstantNodes​(ExpressionNode[] constantNodes)
      • iterator

        public java.util.Iterator<java.util.Map.Entry<java.lang.Object,​java.lang.Object>> iterator()
        Specified by:
        iterator in interface java.lang.Iterable<java.util.Map.Entry<java.lang.Object,​java.lang.Object>>
      • getOrNull

        public @Nullable java.lang.Object getOrNull​(java.lang.Object key)
      • getOrVmNull

        public java.lang.Object getOrVmNull​(java.lang.Object key)
      • getLength

        public int getLength()
      • isEmpty

        public boolean isEmpty()
      • concatenate

        public VmMap concatenate​(VmMap other)
      • containsKey

        public boolean containsKey​(java.lang.Object key)
      • containsValue

        public boolean containsValue​(java.lang.Object value)
      • put

        public VmMap put​(java.lang.Object key,
                         java.lang.Object value)
      • remove

        public VmMap remove​(java.lang.Object key)
      • keys

        public VmSet keys()
      • values

        public VmList values()
      • entries

        public VmList entries()
      • force

        public void force​(boolean allowUndefinedValues)
        Description copied from class: VmValue
        Forces recursive (deep) evaluation of this value.
        Specified by:
        force in class VmValue
      • export

        public java.util.Map<java.lang.Object,​java.lang.Object> export()
        Specified by:
        export in class VmValue
      • accept

        public <T> T accept​(VmValueConverter<T> converter,
                            java.lang.Iterable<java.lang.Object> path)
        Specified by:
        accept in class VmValue
      • equals

        public boolean equals​(@Nullable java.lang.Object other)
        Description copied from class: VmValue
        Enables calling `vmValue.equals()` when not behind a Truffle boundary.
        Specified by:
        equals in class VmValue
      • hashCode

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

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object