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

Class: CodeGen_PECL_Element_Function

Source Location: /CodeGen_PECL-1.0.1/PECL/Element/Function.php

Class Overview

CodeGen_Element
   |
   --CodeGen_PECL_Element
      |
      --CodeGen_PECL_Element_Function

Class describing a function within a PECL extension


Author(s):

Version:

  • Release: @package_version@

Copyright:

  • 2005 Hartmut Holzgraefe

Variables

Methods


Child classes:

CodeGen_PECL_Element_Method
Class that describes a member function within a PHP class

Inherited Variables

Inherited Methods

Class: CodeGen_PECL_Element

CodeGen_PECL_Element::isKeyword()
Checks whether a string is a reserved name
CodeGen_PECL_Element::isType()
Checks whether a string is a valid PHP type name and returns the official name

Class Details

[line 40]
Class describing a function within a PECL extension


[ Top ]


Class Variables

$code =  ""

[line 693]

Code snippet
  • Access: protected

Type:   string


[ Top ]

$codeFile =  ""

[line 701]

Source file of code snippet
  • Access: protected

Type:   string


[ Top ]

$codeLine =  0

[line 709]

Source line of code snippet
  • Access: protected

Type:   int


[ Top ]

$description =  ""

[line 140]

A long description
  • Access: protected

Type:   string


[ Top ]

$hasRefArgs =  false

[line 246]

Does this function have by-reference parameters?
  • Access: protected

Type:   bool


[ Top ]

$name =  ""

[line 49]

The function name
  • Access: protected

Type:   string


[ Top ]

$optional =  0

[line 239]

Number of optional parameters (parsed from proto)
  • Access: protected

Type:   int


[ Top ]

$params = array()

[line 231]

Function parameters (parsed from proto)
  • Access: protected

Type:   array


[ Top ]

$proto =  "void unknown(void)"

[line 215]

Function prototype
  • Access: protected

Type:   string


[ Top ]

$returns =  "void"

[line 223]

Function returntype (parsed from proto)
  • Access: protected

Type:   string


[ Top ]

$role =  "public"

[line 162]

Type of function: internal, public
  • Access: protected

Type:   string


[ Top ]

$summary =  ""

[line 118]

A short description
  • Access: protected

Type:   string


[ Top ]

$testCode =  "echo 'OK'; // no test case for this function yet"

[line 745]

test code snippet
  • Access: protected

Type:   string


[ Top ]

$testDescription =  ""

[line 802]

test code description
  • Access: protected

Type:   string


[ Top ]

$testIni =  ""

[line 859]

test additional ini condition
  • Access: protected

Type:   string


[ Top ]

$testResult = array()

[line 773]

expected test result string
  • Access: protected

Type:   array


[ Top ]

$testSkipIf =  ""

[line 830]

test additional skipif condition
  • Access: protected

Type:   string


[ Top ]

$varargs =  false

[line 206]

Function has variable arguments "..."
  • Access: protected

Type:   bool


[ Top ]



Method Detail

argInfoCode   [line 1435]

string argInfoCode( )

Code needed ahead of the function table

Only required for functions that accept parameters by reference


Overridden in child classes as:

CodeGen_PECL_Element_Method::argInfoCode()
Code needed ahead of the method table

[ Top ]

cCode   [line 982]

string cCode( class $extension)

Create C code implementing the PHP userlevel function
  • Return: C code implementing the function
  • Access: public

Overridden in child classes as:

CodeGen_PECL_Element_Method::cCode()
Create C code implementing the PHP userlevel function

Parameters:

class   $extension   —  Extension extension the function is part of

[ Top ]

cProto   [line 1403]

string cProto( )

C function signature
  • Return: C snippet

Overridden in child classes as:

CodeGen_PECL_Element_Method::cProto()
Create proto line for method

[ Top ]

createTest   [line 1361]

object generated createTest( CodeGen_PECL_Extension $extension)

Create test case for this function
  • Return: test case
  • Access: public

Overridden in child classes as:

CodeGen_PECL_Element_Method::createTest()
Create test case for this function

Parameters:

object extension   $extension   —  the function is part of

[ Top ]

defaultval   [line 918]

string defaultval( string $param, string $default)

Helper for cCode
  • Return: default value

Parameters:

string   $param   —  Parameter spec. array
string   $default   —  default value for type

[ Top ]

docEntry   [line 1284]

string docEntry( string $base)

Create DocBook reference entry for the function
  • Return: DocBook XML code
  • Access: public

Parameters:

string   $base   —  base (currently not used)

[ Top ]

functionEntry   [line 1456]

string functionEntry( )

Generate registration entry for extension function table

[ Top ]

getCode   [line 731]

string getCode( )

Code getter

[ Top ]

getFullName   [line 107]

string getFullName( )

distinguishable name getter

here it's just the same as the plain name but e.g. for class methods that wouldn't be enough


Overridden in child classes as:

CodeGen_PECL_Element_Method::getFullName()
distinguishable name getter

[ Top ]

getName   [line 93]

string getName( )

name getter

[ Top ]

getRole   [line 194]

void getRole( )


[ Top ]

getTestCode   [line 762]

string getTestCode( )

testCode getter

[ Top ]

getTestDescription   [line 819]

string getTestDescription( )

testDescription getter

[ Top ]

getTestIni   [line 876]

string getTestIni( )

testIni getter

[ Top ]

getTestResult   [line 791]

array getTestResult( )

testResult getter

[ Top ]

getTestSkipIf   [line 847]

string getTestSkipIf( )

testSkipIf getter

[ Top ]

hCode   [line 1415]

string hCode( class $extension)

Create C header entry for userlevel function
  • Return: C header code snippet
  • Access: public

Parameters:

class   $extension   —  Extension extension the function is part of

[ Top ]

isInternalName   [line 896]

bool isInternalName( string $name)

Check whether a function name is already used internally
  • Return: true if function name is already used internally
  • Access: public

Parameters:

string   $name   —  function name

[ Top ]

localVariables   [line 949]

string localVariables( $extension)

Generate local variable declarations
  • Return: C code snippet

Overridden in child classes as:

CodeGen_PECL_Element_Method::localVariables()
Generate local variable declarations

Parameters:

   $extension   — 

[ Top ]

oldSetProto   [line 545]

void oldSetProto( $proto)


Parameters:

   $proto   — 

[ Top ]

parseParameterHook   [line 934]

void parseParameterHook( string $argc, string $argString, array $argPointers)

Hook for parameter parsing API function
  • Access: protected

Overridden in child classes as:

CodeGen_PECL_Element_Method::parseParameterHook()
Hook for parameter parsing API function

Parameters:

string   $argc   —  C expr. for number of arguments
string   $argString   —  Argument string
array   $argPointers   —  Argument variable pointers

[ Top ]

setCode   [line 718]

void setCode( string $code, [int $line = 0], [int $file = ""])

Code setter

Overridden in child classes as:

CodeGen_PECL_Element_Method::setCode()
Code addition must be validated here

Parameters:

string   $code   —  code snippet
int   $line   —  source line
int   $file   —  source filename

[ Top ]

setDescription   [line 147]

void setDescription( string $text)

description setter

Parameters:

string   $text   — 

[ Top ]

setName   [line 56]

void setName( string $name)

name setter

Overridden in child classes as:

CodeGen_PECL_Element_Method::setName()
Method name checking is less strict

Parameters:

string   $name   — 

[ Top ]

setProto   [line 255]

bool setProto( string $proto, $extension)

Set parameter and return value information from PHP style prototype
  • Return: Success status
  • Access: public

Overridden in child classes as:

CodeGen_PECL_Element_Method::setProto()
Set parameter and return value information from PHP style prototype

Parameters:

string   $proto   —  PHP style prototype
   $extension   — 

[ Top ]

setRole   [line 169]

void setRole( string $role)

role setter

Overridden in child classes as:

CodeGen_PECL_Element_Method::setRole()
The role attribute doesn't apply here

Parameters:

string   $role   — 

[ Top ]

setSummary   [line 125]

void setSummary( string $text)

summary getter

Parameters:

string   $text   — 

[ Top ]

setTestCode   [line 752]

void setTestCode( string $code)

testCode setter

Parameters:

string   $code   —  code snippet

[ Top ]

setTestDescription   [line 809]

void setTestDescription( string $text)

testDescritpion setter

Parameters:

string   $text   —  text

[ Top ]

setTestIni   [line 866]

void setTestIni( string $code)

testIni setter

Parameters:

string   $code   —  code snippet

[ Top ]

setTestResult   [line 781]

void setTestResult( string $text, [string $mode = "plain"])

testResult setter

Parameters:

string   $text   —  result text
string   $mode   —  test output comparison mode

[ Top ]

setTestSkipIf   [line 837]

void setTestSkipIf( string $code)

testSkipIf setter

Parameters:

string   $code   —  code snippet

[ Top ]

writeTest   [line 1345]

void writeTest( CodeGen_PECL_Extension $extension)

write test case for this function
  • Access: public

Parameters:

class   $extension   —  Extension extension the function is part of

[ Top ]


Documentation generated on Mon, 11 Mar 2019 14:42:53 -0400 by phpDocumentor 1.4.4. PEAR Logo Copyright © PHP Group 2004.