phpDocumentor phpDocumentor
Parsers
[ class tree: phpDocumentor ] [ index: phpDocumentor ] [ all elements ]

Class: phpDocumentor_TutorialHighlightParser

Source Location: /phpDocumentor/TutorialHighlightParser.inc

Class phpDocumentor_TutorialHighlightParser

Class Overview

Highlights source code using parse()

Located in /phpDocumentor/TutorialHighlightParser.inc [line 69]

Publisher
   |
   --Parser
      |
      --phpDocumentor_TutorialHighlightParser
Author(s): Information Tags:
Version:  Release: @VER@
Copyright:  2003-2007 Gregory Beaver
Link:  http://pear.php.net/PhpDocumentor
Link:  http://www.phpdoc.org
Todo:  CS cleanup - change package to PhpDocumentor
Todo:  CS cleanup - change classname to PhpDocumentor_*
License:  LGPL

Methods

[ Top ]
Inherited Properties, Constants, and Methods
Inherited Properties Inherited Methods Inherited Constants

Inherited From Publisher

Publisher::$subscriber

Inherited From Parser

Parser::Parser()
Set up invariant parsing variables
Parser::categoryTagHandler()
handles @category
Parser::checkEventPop()
this function checks whether parameter $word is a token for popping the current event off of the Event Stack.
Parser::checkEventPush()
this function checks whether parameter $word is a token for pushing a new event onto the Event Stack.
Parser::configWordParser()
tell the parser's WordParser $wp to set up tokens to parse words by.
Parser::defaultTagHandler()
Handles all standard tags that only have a description
Parser::endTag()
Called to clean up at the end of parsing a @tag in a docblock
Parser::exampleTagHandler()
handles @example
Parser::getParserEventName()
Debugging function, takes an event number and attempts to return its name
Parser::globalTagHandler()
handles @global
Parser::invalidTagHandler()
Handles tags like '@filesource' that only work in PHP 4.3.0+
Parser::packageTagHandler()
handles @package
Parser::paramTagHandler()
handles @param
Parser::parse()
Parse a new file
Parser::propertyTagHandler()
Handles @property(-read or -write) and @method magic tag
Parser::returnTagHandler()
handles @return
Parser::setupStates()
setup the parser tokens, and the pushEvent/popEvent arrays
Parser::staticvarTagHandler()
handles @staticvar
Parser::usesTagHandler()
handles @uses
Parser::varTagHandler()
handles @var

Inherited From Publisher

Publisher::publishEvent()
Publish an event
Publisher::subscribe()
Adds a subscriber to the $subscriber array().

[ Top ]
Method Summary
phpDocumentor_TutorialHighlightParser   phpDocumentor_TutorialHighlightParser()   Initialize the $tokenpushEvent, $wordpushEvent arrays
mixed   checkEventPop()   This function checks whether parameter $word is a token for popping the current event off of the Event Stack.
mixed   checkEventPush()   This function checks whether parameter $word is a token for pushing a new event onto the Event Stack.
void   configWordParser()   Tell the parser's WordParser $wp to set up tokens to parse words by.
string|int   getParserEventName()   searches for a parser event name based on its number
void   newLineNum()   advances output to a new line
bool   parse()   Parse a new file
void   setLineNum()   Start the parsing at a certain line number
void   setupStates()   Initialize all parser state variables

[ Top ]
Methods
Constructor phpDocumentor_TutorialHighlightParser  [line 423]

  phpDocumentor_TutorialHighlightParser phpDocumentor_TutorialHighlightParser( )

Initialize the $tokenpushEvent, $wordpushEvent arrays



[ Top ]
checkEventPop  [line 380]

  mixed checkEventPop( string|array $word, integer $pevent  )

This function checks whether parameter $word is a token for popping the current event off of the Event Stack.

Parameters:
string|array   $word:  token value
integer   $pevent:  parser event from Parser.inc

API Tags:
Return:  returns false, or the event number

Information Tags:
Todo:  CS cleanup - PHPCS needs to recognize docblock template tags

Redefinition of:
Parser::checkEventPop()
this function checks whether parameter $word is a token for popping the current event off of the Event Stack.

[ Top ]
checkEventPush  [line 358]

  mixed checkEventPush( string|array $word, integer $pevent  )

This function checks whether parameter $word is a token for pushing a new event onto the Event Stack.

Parameters:
string|array   $word:  token value
integer   $pevent:  parser event from Parser.inc

API Tags:
Return:  returns false, or the event number

Information Tags:
Todo:  CS cleanup - PHPCS needs to recognize docblock template tags

Redefinition of:
Parser::checkEventPush()
this function checks whether parameter $word is a token for pushing a new event onto the Event Stack.

[ Top ]
configWordParser  [line 341]

  void configWordParser( integer $e  )

Tell the parser's WordParser $wp to set up tokens to parse words by.

Tokens are word separators. In English, a space or punctuation are examples of tokens. In PHP, a token can be a ;, a parenthesis, or even the word "function"

Parameters:
integer   $e:  an event number

API Tags:
See:  WordParser
Usedby:  phpDocumentor_TutorialHighlightParser::parse() - pass $parse_data to prepare retrieval of tokens


Redefinition of:
Parser::configWordParser()
tell the parser's WordParser $wp to set up tokens to parse words by.

[ Top ]
getParserEventName  [line 508]

  string|int getParserEventName( int $value  )

searches for a parser event name based on its number

Parameters:
int   $value:  the event number

API Tags:
Return:  the event name, or the original value


Redefinition of:
Parser::getParserEventName()
Debugging function, takes an event number and attempts to return its name

[ Top ]
newLineNum  [line 115]

  void newLineNum( )

advances output to a new line


API Tags:
Uses:  Converter::SourceLine() - encloses $_line in a converter-specific format


[ Top ]
parse  [line 166]

  bool parse( string $parse_data, Converter &$converter, [false|string $filesourcepath = false], [false|integer $linenum = false]  )

Parse a new file

The parse() method is a do...while() loop that retrieves tokens one by one from the $_event_stack, and uses the token event array set up by the class constructor to call event handlers.

The event handlers each process the tokens passed to them, and use the _addoutput() method to append the processed tokens to the $_line variable. The word parser calls newLineNum() every time a line is reached.

In addition, the event handlers use special linking functions _link() and its cousins (_classlink(), etc.) to create in-code hyperlinks to the documentation for source code elements that are in the source code.

Parameters:
string   $parse_data:  blah
Converter   &$converter:  blah
false|string   $filesourcepath:  full path to file with @filesource tag, if this is a @filesource parse
false|integer   $linenum:  starting line number from {@source linenum}

API Tags:
Staticvar:  integer $endrecur: used for recursion limiting if a handler for an event is not found
Uses:  phpDocumentor_TutorialHighlightParser::setupStates() - initialize parser state variables
Uses:  phpDocumentor_TutorialHighlightParser::configWordParser() - pass $parse_data to prepare retrieval of tokens

Information Tags:
Todo:  CS cleanup - unable to get function signature below 85char wide

Redefinition of:
Parser::parse()
Parse a new file

[ Top ]
setLineNum  [line 130]

  void setLineNum( int $num  )

Start the parsing at a certain line number

Parameters:
int   $num:  the line number


[ Top ]
setupStates  [line 403]

  void setupStates( bool|string $parsedata  )

Initialize all parser state variables

Parameters:
bool|string   $parsedata:  true if we are highlighting an inline {@source} tag's output, or the name of class we are going to start from

API Tags:
Usedby:  phpDocumentor_TutorialHighlightParser::parse() - initialize parser state variables
Uses:  $_wp - sets to a new phpDocumentor_HighlightWordParser


Redefinition of:
Parser::setupStates()
setup the parser tokens, and the pushEvent/popEvent arrays

[ Top ]

Documentation generated on Tue, 06 Dec 2011 07:21:24 -0600 by phpDocumentor 1.4.4