## imcode.util
Class LazilyLoadedObject<E extends LazilyLoadedObject.Copyable<E>>

    java.lang.Object
      imcode.util.LazilyLoadedObject<E>

All Implemented Interfaces:
  java.io.Serializable, java.lang.Cloneable

    public class LazilyLoadedObject<E extends LazilyLoadedObject.Copyable<E>>

extends java.lang.Object
implements java.io.Serializable, java.lang.Cloneable

See Also:
  Serialized Form

Nested Class Summary
`static interface` `LazilyLoadedObject.Copyable<C extends LazilyLoadedObject.Copyable>`
`static interface` `LazilyLoadedObject.Loader<L extends LazilyLoadedObject.Copyable>`

Constructor Summary
`LazilyLoadedObject(LazilyLoadedObject.Loader<E> loader)`

Method Summary
`java.lang.Object` `clone()`
`java.lang.Object` `get()`
`void` `load()`
`void` `set(E o)`

Methods inherited from class java.lang.Object
`equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### LazilyLoadedObject

    public LazilyLoadedObject(LazilyLoadedObject.Loader<E> loader)

Method Detail

### get

    public java.lang.Object get()

### load

    public void load()

### clone

    public java.lang.Object clone()
                           throws java.lang.CloneNotSupportedException

  Overrides:
    `clone` in class `java.lang.Object`
  Throws:
    `java.lang.CloneNotSupportedException`

### set

    public void set(E o)