original_string: public static function load($in, $nullable = true, $usingCache = true) {
  		if( empty($in) ) {
  			if( $nullable ) {
  				return null;
  			}
  			static::throwNotFound('invalidParameter_load');
  		}
  		// Try to load an object from this class
  		if( is_object($in) && $in instanceof static ) {
  			return $in;
  		}
  		$IDFIELD = static::$IDFIELD;
  		// If $in is an array, we trust him, as data of the object.
  		if( is_array($in) ) {
  			$id = $in[$IDFIELD];
  			$data = $in;
  		} else {
  			$id = $in;
  		}
  		if( !is_ID($id) ) {
  			static::throwException('invalidID');
  		}
  		// Loading cached
  		if( $usingCache && isset(static::$instances[static::getClass()][$id]) ) {
  			return static::$instances[static::getClass()][$id];
  		}
  		// If we don't get the data, we request them.
  		if( empty($data) ) {
  			// Getting data
  			$obj = static::get(array(
  				'where'  => $IDFIELD . '=' . $id,
  				'output' => SQLAdapter::OBJECT,
  			));
  			// Ho no, we don't have the data, we can't load the object !
  			if( empty($obj) ) {
  				if( $nullable ) {
  					return null;
  				}
  				static::throwNotFound();
  			}
  		} else {
  			$obj = new static($data);
  		}
  		// Caching object
  		return $usingCache ? $obj->checkCache() : $obj;
  	}
code: public static function load($in, $nullable = true, $usingCache = true) {
  		if( empty($in) ) {
  			if( $nullable ) {
  				return null;
  			}
  			static::throwNotFound('invalidParameter_load');
  		}
  		// Try to load an object from this class
  		if( is_object($in) && $in instanceof static ) {
  			return $in;
  		}
  		$IDFIELD = static::$IDFIELD;
  		// If $in is an array, we trust him, as data of the object.
  		if( is_array($in) ) {
  			$id = $in[$IDFIELD];
  			$data = $in;
  		} else {
  			$id = $in;
  		}
  		if( !is_ID($id) ) {
  			static::throwException('invalidID');
  		}
  		// Loading cached
  		if( $usingCache && isset(static::$instances[static::getClass()][$id]) ) {
  			return static::$instances[static::getClass()][$id];
  		}
  		// If we don't get the data, we request them.
  		if( empty($data) ) {
  			// Getting data
  			$obj = static::get(array(
  				'where'  => $IDFIELD . '=' . $id,
  				'output' => SQLAdapter::OBJECT,
  			));
  			// Ho no, we don't have the data, we can't load the object !
  			if( empty($obj) ) {
  				if( $nullable ) {
  					return null;
  				}
  				static::throwNotFound();
  			}
  		} else {
  			$obj = new static($data);
  		}
  		// Caching object
  		return $usingCache ? $obj->checkCache() : $obj;
  	}
code_tokens: public static function load ( $ in , $ nullable = true , $ usingCache = true ) { if ( empty ( $ in ) ) { if ( $ nullable ) { return null ; } static :: throwNotFound ( 'invalidParameter_load' ) ; } // Try to load an object from this class if ( is_object ( $ in ) && $ in instanceof static ) { return $ in ; } $ IDFIELD = static :: $ IDFIELD ; // If $in is an array, we trust him, as data of the object. if ( is_array ( $ in ) ) { $ id = $ in [ $ IDFIELD ] ; $ data = $ in ; } else { $ id = $ in ; } if ( ! is_ID ( $ id ) ) { static :: throwException ( 'invalidID' ) ; } // Loading cached if ( $ usingCache && isset ( static :: $ instances [ static :: getClass ( ) ] [ $ id ] ) ) { return static :: $ instances [ static :: getClass ( ) ] [ $ id ] ; } // If we don't get the data, we request them. if ( empty ( $ data ) ) { // Getting data $ obj = static :: get ( array ( 'where' => $ IDFIELD . '=' . $ id , 'output' => SQLAdapter :: OBJECT , ) ) ; // Ho no, we don't have the data, we can't load the object ! if ( empty ( $ obj ) ) { if ( $ nullable ) { return null ; } static :: throwNotFound ( ) ; } } else { $ obj = new static ( $ data ) ; } // Caching object return $ usingCache ? $ obj -> checkCache ( ) : $ obj ; }
docstring: Load a permanent object
  
  @param    mixed|mixed[] $in The object ID to load or a valid array of the object's data
  @param    boolean $nullable True to silent errors row and return null
  @param    boolean $usingCache True to cache load and set cache, false to not cache
  @return   static The object loaded from database
  @see static::get()
  
  Loads the object with the ID $id or the array data.
  The return value is always a static object (no null, no array, no other object).
docstring_tokens: Load a permanent object