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

Class: phpDocumentor_TutorialHighlightParser

Source Location: /PhpDocumentor-1.5.0a1/phpDocumentor/TutorialHighlightParser.inc

Class Overview

Publisher
   |
   --Parser
      |
      --phpDocumentor_TutorialHighlightParser

Highlights source code using parse()


Author(s):

Version:

  • Release: 1.5.0a1

Copyright:

  • 2003-2007 Gregory Beaver

Methods


Inherited Variables

Inherited Methods

Class: 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

Class: Publisher

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

Class Details

[line 69]
Highlights source code using parse()


[ Top ]


Method Detail

phpDocumentor_TutorialHighlightParser (Constructor)   [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.
  • Return: returns false, or the event number
  • Todo: CS cleanup - PHPCS needs to recognize docblock template tags

Overrides Parser::checkEventPop() (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

[ 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.
  • Return: returns false, or the event number
  • Todo: CS cleanup - PHPCS needs to recognize docblock template tags

Overrides Parser::checkEventPush() (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

[ 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"


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

Parameters:

integer   $e   —  an event number

[ Top ]

getParserEventName   [line 508]

string|int getParserEventName( int $value)

searches for a parser event name based on its number
  • Return: the event name, or the original value

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

Parameters:

int   $value   —  the event number

[ Top ]

newLineNum   [line 115]

void newLineNum( )

advances output to a new line
  • 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.


Overrides Parser::parse() (Parse a new file)

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}

[ 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

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

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

[ Top ]


Documentation generated on Mon, 11 Mar 2019 15:50:34 -0400 by phpDocumentor 1.4.4. PEAR Logo Copyright © PHP Group 2004.