original_string: public static function extractUpdateQuery(&$input, PermanentObject $object) {
  		static::onEdit($input, $object);
  		
  		foreach( $input as $fieldName => $fieldValue ) {
  			// If saving object, value is the same, validator should check if value is new
  			if( !in_array($fieldName, static::$fields) ) {
  				unset($input[$fieldName]);
  			}
  		}
  		
  		$options = array(
  			'what'   => $input,
  			'table'  => static::$table,
  			'where'  => static::getIDField() . '=' . $object->id(),
  			'number' => 1,
  		);
  		
  		return $options;
  	}
code: public static function extractUpdateQuery(&$input, PermanentObject $object) {
  		static::onEdit($input, $object);
  		
  		foreach( $input as $fieldName => $fieldValue ) {
  			// If saving object, value is the same, validator should check if value is new
  			if( !in_array($fieldName, static::$fields) ) {
  				unset($input[$fieldName]);
  			}
  		}
  		
  		$options = array(
  			'what'   => $input,
  			'table'  => static::$table,
  			'where'  => static::getIDField() . '=' . $object->id(),
  			'number' => 1,
  		);
  		
  		return $options;
  	}
code_tokens: public static function extractUpdateQuery ( & $ input , PermanentObject $ object ) { static :: onEdit ( $ input , $ object ) ; foreach ( $ input as $ fieldName => $ fieldValue ) { // If saving object, value is the same, validator should check if value is new if ( ! in_array ( $ fieldName , static :: $ fields ) ) { unset ( $ input [ $ fieldName ] ) ; } } $ options = array ( 'what' => $ input , 'table' => static :: $ table , 'where' => static :: getIDField ( ) . '=' . $ object -> id ( ) , 'number' => 1 , ) ; return $ options ; }
docstring: Extract an update query from this object
  
  @param array $input
  @param PermanentObject $object
  @return array
  @uses UpdateTransactionOperation
docstring_tokens: Extract an update query from this object