public function mutable($props)
	{
		$props = call_user_func_array(array($this, 'flattenArguments'), func_get_args()); 
		$collect = $unknown = [];

		foreach ($props as $prop) {
			if (!property_exists(AbstractGenerator::class, $prop)) {
				array_push($unknown, $prop);
				continue;
			}

			array_push($collect, $prop);
		}

		if (!empty($unknown)) {

			throw new InvalidArgumentException(sprintf("Cannot add unknown %s to mutables collection ('%s').", (count($unknown) > 1) ? 'properties' : 'property', join("', '", $unknown)));
			
		}
		
		$this->mutables = array_merge(array_diff($this->mutables, $collect), $collect);
		
		return $this;
	}
public function mutable($props)
	{
		$props = call_user_func_array(array($this, 'flattenArguments'), func_get_args()); 
		$collect = $unknown = [];

		foreach ($props as $prop) {
			if (!property_exists(AbstractGenerator::class, $prop)) {
				array_push($unknown, $prop);
				continue;
			}

			array_push($collect, $prop);
		}

		if (!empty($unknown)) {

			throw new InvalidArgumentException(sprintf("Cannot add unknown %s to mutables collection ('%s').", (count($unknown) > 1) ? 'properties' : 'property', join("', '", $unknown)));
			
		}
		
		$this->mutables = array_merge(array_diff($this->mutables, $collect), $collect);
		
		return $this;
	}
public function mutable ( $ props ) { $ props = call_user_func_array ( array ( $ this , 'flattenArguments' ) , func_get_args ( ) ) ; $ collect = $ unknown = [ ] ; foreach ( $ props as $ prop ) { if ( ! property_exists ( AbstractGenerator :: class , $ prop ) ) { array_push ( $ unknown , $ prop ) ; continue ; } array_push ( $ collect , $ prop ) ; } if ( ! empty ( $ unknown ) ) { throw new InvalidArgumentException ( sprintf ( "Cannot add unknown %s to mutables collection ('%s')." , ( count ( $ unknown ) > 1 ) ? 'properties' : 'property' , join ( "', '" , $ unknown ) ) ) ; } $ this -> mutables = array_merge ( array_diff ( $ this -> mutables , $ collect ) , $ collect ) ; return $ this ; }
Add mutable attributes to the mutables collection

@param mixed $props
@return $this

@throws \InvalidArgumentException
Add mutable attributes to the mutables collection