PHP Classes

File: docs/

Recommend this page to a friend!
  Classes of Kjell-Inge Gustafsson  >  PcGen  >  docs/  >  Download  
File: docs/
Role: Auxiliary data
Content type: text/markdown
Description: Auxiliary data
Class: PcGen
Generate PHP code from parameters
Author: By
Last change: 1.1.47
Date: 1 year ago
Size: 4,863 bytes


Class file image Download

[comment]: # (This file is part of PcGen, PHP Code Generation support package. Copyright 2020 Kjell-Inge Gustafsson, kigkonsult, All rights reserved, licence GPL 3.0)


The `FcnInvokeMgr` class manages (single) function/method invoke

  • opt with arguments
  • ex ```FcnInvokeMgr::factory( FcnInvokeMgr::THIS_KW, 'method, [ 'arg1', 'arg2' ] )->toString()``` * give result ```$this->method( $arg1, $arg2 )``` (+eol)

Chained invokes manages by [ChainInvokeMgr].

FcnInvokeMgr Methods

Inherited [Common methods]

* ```class``` _string_ one of ```null```, ```parent```, ```self```, ```this```, ```otherClass``` (fqcn), ```$class```
   convenient constants found in PcGenInterface
* ```fcnName```   _string_, function/method name
* ```arguments``` _array_, note ```FcnInvokeMgr::setArguments()``` below
* For eol and indents, defaults are used
* Static
* Return _static_

  • note ```EntityMgr``` below
  • Static
  • Return _static_

* Return _array_, result code rows (null-bytes removed) no trailing eol
* Throws _RuntimeException_

  • Return _string_ with code rows (extends toArray), each code row with trailing eol
  • Throws _RuntimeException_ ---

* The function/method name
* ```class``` _string_
   one of ```null```, ```parent```, ```self```, ```this```, ```otherClass``` (fqcn), ```$class```
  convenient constants found in PcGenInterface
* ```fcnName```  _string_, function/method name
* Return _static_
* Throws _InvalidArgumentException_

  • The function/method name
  • note ```EntityMgr``` below
  • Return _static_
  • Throws _InvalidArgumentException_

* ```argument``` _ArgumentDto_
   note ```ArgumentDto``` below
* Return _static_

  • note ```VarDto``` below
  • Return _static_

* ```name``` _string_, argument name
* Return _static_
* Throws _InvalidArgumentException_

  • name, _string_
    _ArgumentDto_, note ```ArgumentDto``` below
    _VarDto_, note ```VarDto``` below
  • Return _static_
  • Throws _InvalidArgumentException_

* Only applicable for '$class', ignored by the others
* ```isStatic``` _bool_, (default false)
* Return _static_
* Throws _InvalidArgumentException_
* require (class+)name set

Example : ```FcnInvokeMgr::factory( '$class', 'method' )->toString(); ```<br>
Result : ``` $class->method() ``` (+eol)

Example : ```FcnInvokeMgr::factory( '$class', 'method' )->setIsStatic( true )->toString(); ```<br>
Result : ``` $class::method() ``` (+eol)

#### Misc

_ArgumentDto_ instance creation ([ArgumentDto])<br><br>

_EntityMgr_ instance creation ([EntityMgr])<br><br>

* ```class```, _string_, one of ```null```, ```parent```, ```self```, ```this```, ```otherClass``` (fqcn), ```$class```
  * convenient constants found in PcGenInterface
* ```fcnName``` _string_, the name

_VarDto_ instance creation ([VarDto])<br><br>

Example 1


$code = FcnInvokeMgr::()
    ->setname( FcnInvokeMgr::THIS_KW,  'method' )
    ->setArgument( [ 'arg1', 'arg2' ] )

Result :

$this->method( $arg1, $arg2 )

Example 2


$rcm = ReturnClauseMgr::init()
        FcnInvokeMgr::factory( 'SourceClass', FcnInvokeMgr::FACTORY, [ 'arg11', 'arg12' ] ),
        FcnInvokeMgr::factory( 'SourceClass', 'method2', [ 'arg21', 'arg22' ] ),
        FcnInvokeMgr::factory( 'SourceClass', 'method3', [ 'arg31', 'arg32' ] ),
        FcnInvokeMgr::factory( 'SourceClass', 'method4', [ 'arg41', 'arg42' ] ),
        FcnInvokeMgr::factory( 'SourceClass', 'method5' )

Result :

return SourceClass::factory( $arg11, $arg12 )
    ->method2( $arg21, $arg22 )
    ->method3( $arg31, $arg32 )
    ->method4( $arg41, $arg42 )

<small>Return to PcGen [README], [Summary]</small>

[ArgumentDto] [ChainInvokeMgr] [Common methods] [EntityMgr] [README]:../ [Summary] [VarDto]

For more information send a message to info at phpclasses dot org.