original_string: public static function createFromStream(\Jstewmc\Stream\Stream $stream)
  	{
  		$symbol = false;
  		
  		// if a current character exists
  		if ($stream->current()) {
  			// if the current character is a backslash
  			if ($stream->current() === '\\') {
  				// if the next character exists
  				if ($stream->next() !== false) {
  					// if the now current character is not alphanumeric
  					if ( ! ctype_alnum($stream->current())) {
  						// create a new control symbol
  						$symbol = new Symbol($stream->current());
  						// if the current character is an apostrophe, get the symbol's parameter
  						if ($stream->current() === '\'') {
  							$parameter = $stream->next() . $stream->next();
  							$symbol->setParameter($parameter);
  						}
  						// if the next character is a space, the control symbol is space-delimited, 
  						//     and we should set the flag; otherwise, it's not, and we should rollback
  						//     to leave the pointer on the last character in the token (i.e., the
  						//     symbol)
  						//
  						if ($stream->next() === ' ') {
  							$symbol->setIsSpaceDelimited(true);	
  						} else {
  							$symbol->setIsSpaceDelimited(false);
  							$stream->previous();
  						}
  					} else {
  						throw new \InvalidArgumentException(
  							__METHOD__."() expects the next element in parameter one, characters, to "
  								. "be a non-alphanumeric character"
  						);
  					}
  				} else {
  					// hmm, do nothing?
  				}
  			} else {
  				throw new \InvalidArgumentException(
  					__METHOD__."() expects the current element in parameter one, characters, to "
  						. "be the backslash character"
  				);
  			}
  		}
  		
  		return $symbol;
  	}
code: public static function createFromStream(\Jstewmc\Stream\Stream $stream)
  	{
  		$symbol = false;
  		
  		// if a current character exists
  		if ($stream->current()) {
  			// if the current character is a backslash
  			if ($stream->current() === '\\') {
  				// if the next character exists
  				if ($stream->next() !== false) {
  					// if the now current character is not alphanumeric
  					if ( ! ctype_alnum($stream->current())) {
  						// create a new control symbol
  						$symbol = new Symbol($stream->current());
  						// if the current character is an apostrophe, get the symbol's parameter
  						if ($stream->current() === '\'') {
  							$parameter = $stream->next() . $stream->next();
  							$symbol->setParameter($parameter);
  						}
  						// if the next character is a space, the control symbol is space-delimited, 
  						//     and we should set the flag; otherwise, it's not, and we should rollback
  						//     to leave the pointer on the last character in the token (i.e., the
  						//     symbol)
  						//
  						if ($stream->next() === ' ') {
  							$symbol->setIsSpaceDelimited(true);	
  						} else {
  							$symbol->setIsSpaceDelimited(false);
  							$stream->previous();
  						}
  					} else {
  						throw new \InvalidArgumentException(
  							__METHOD__."() expects the next element in parameter one, characters, to "
  								. "be a non-alphanumeric character"
  						);
  					}
  				} else {
  					// hmm, do nothing?
  				}
  			} else {
  				throw new \InvalidArgumentException(
  					__METHOD__."() expects the current element in parameter one, characters, to "
  						. "be the backslash character"
  				);
  			}
  		}
  		
  		return $symbol;
  	}
code_tokens: public static function createFromStream ( \ Jstewmc \ Stream \ Stream $ stream ) { $ symbol = false ; // if a current character exists if ( $ stream -> current ( ) ) { // if the current character is a backslash if ( $ stream -> current ( ) === '\\' ) { // if the next character exists if ( $ stream -> next ( ) !== false ) { // if the now current character is not alphanumeric if ( ! ctype_alnum ( $ stream -> current ( ) ) ) { // create a new control symbol $ symbol = new Symbol ( $ stream -> current ( ) ) ; // if the current character is an apostrophe, get the symbol's parameter if ( $ stream -> current ( ) === '\'' ) { $ parameter = $ stream -> next ( ) . $ stream -> next ( ) ; $ symbol -> setParameter ( $ parameter ) ; } // if the next character is a space, the control symbol is space-delimited,  //     and we should set the flag; otherwise, it's not, and we should rollback //     to leave the pointer on the last character in the token (i.e., the //     symbol) // if ( $ stream -> next ( ) === ' ' ) { $ symbol -> setIsSpaceDelimited ( true ) ; } else { $ symbol -> setIsSpaceDelimited ( false ) ; $ stream -> previous ( ) ; } } else { throw new \ InvalidArgumentException ( __METHOD__ . "() expects the next element in parameter one, characters, to " . "be a non-alphanumeric character" ) ; } } else { // hmm, do nothing? } } else { throw new \ InvalidArgumentException ( __METHOD__ . "() expects the current element in parameter one, characters, to " . "be the backslash character" ) ; } } return $ symbol ; }
docstring: Creates a control symbol token from stream
  
  @param  Jstewmc\Stream  $stream  a stream of characters (the current character
  must be the backslash character, and the next character should be non-
  alphanumeric)
  @return  Jstewmc\Rtf\Token\Control\Symbol|false
  @throws  InvalidArgumentException  if the current character in $stream is
  not a backslash
  @throws  InvalidArgumentException  if the next character in $stream is not
  a non-alphanumeric character
  @since  0.1.0
  @since  0.2.0  renamed from createFromSource() to createFromStream; replaced
  argument $characters, an array of characters, with $stream, an instance
  of Jstewmc\STream
docstring_tokens: Creates a control symbol token from stream