001package arez.annotations;
002
003/**
004 * Defines the states of a component.
005 */
006public enum State
007{
008  /**
009   * The reactive elements have been created (i.e. the {@link arez.ObservableValue}, {@link arez.Observer},
010   * {@link arez.ComputableValue} etc.). The {@link PostConstruct} method has NOT been invoked.
011   */
012  CONSTRUCTED,
013  /**
014   * The {@link PostConstruct} method (if any) has been invoked and {@link arez.Observer}s have been scheduled
015   * but the scheduler has not been triggered.
016   */
017  COMPLETE,
018  /**
019   * The scheduler has been triggered and any {@link Observe} methods have been invoked if runtime managed.
020   */
021  READY,
022  /**
023   * The component is disposing.
024   */
025  DISPOSING
026}