JavaScript is disabled on your browser.
Skip navigation links
  • Summary:
  • Nested |
  • Field |
  • Constr |
  • Method
  • Detail:
  • Field |
  • Constr |
  • Method
gnu.mapping

Interface Lazy<T>

  • All Known Implementing Classes:
    Future, LProcess, Promise


    public interface Lazy<T>
    A lazy value is one that may be calculated on demand. The primary implementation class is Promise, but Future also implements Lazy. Primitive operations (such as arithmetic) require non-lazy (or "eager") values; in Kawa these are automatically evaluated ("forced") using Promise.force(java.lang.Object) or equivalent.

    In Kawa all objects are considered eager (non-lazy) unless the object's class implements Lazy, though note that an eager value may contain lazy components (for example an eager vector of lazy values). Note that the compiler assumes that Promise.force(java.lang.Object) is a no-op and does not need to be emitted unless the type of the value implements Lazy, or the class is Object. (See LazyType.maybeLazy(gnu.bytecode.Type).)

    • Method Summary

      All Methods
      Modifier and Type Method and Description
      T getValue ()
      Return the actual value.
    • Method Detail

      • getValue

        T getValue()
        Return the actual value. Note that getValue() may return this, if this object isn't actually lazy. It may also return another lazy value. Normally you should use Promise.force{val} to extra a non-lazy (eager) value.
Skip navigation links
  • Summary:
  • Nested |
  • Field |
  • Constr |
  • Method
  • Detail:
  • Field |
  • Constr |
  • Method

AltStyle によって変換されたページ (->オリジナル) /