PHP Class Pop\Code\Generator

Author: Nick Sagona, III ([email protected])
Show file Open project: nicksagona/PopPHP Class Usage Examples

Protected Properties

Property Type Description
$allowed array Array of allowed file types.
$body string Code body
$close boolean Flag to close the code file with ?>
$code Pop\Code\Generator\ClassGenerator | Pop\Code\Generator\InterfaceGenerator Code object
$docblock Pop\Code\Generator\DocblockGenerator Docblock generator object
$indent string Code indent
$namespace Pop\Code\Generator\NamespaceGenerator Namespace generator object

Public Methods

Method Description
__construct ( string $file, integer $type = Generator::CREATE_NONE ) : Generator Constructor
appendToBody ( string $body, boolean $newline = true ) : Generator Append to the code body
code ( ) : ClassGenerator | InterfaceGenerator Access the code generator object
createClass ( ) : Generator Create a class generator object
createInterface ( ) : Generator Create a class generator object
getBody ( ) : string Get the method body
getDocblock ( ) : DocblockGenerator Access the docblock generator object
getIndent ( ) : string Get the code indent
getNamespace ( ) : NamespaceGenerator Access the namespace generator object
output ( boolean $download = false ) : Generator Output the code object directly.
render ( boolean $ret = false ) : mixed Render method
save ( string $to = null, boolean $append = false ) : void Save the code object to disk.
setBody ( string $body, boolean $newline = true ) : Generator Set the code body
setClose ( boolean $close = false ) : Generator Set the code close flag
setDocblock ( DocblockGenerator $docblock ) : Generator Set the docblock generator object
setIndent ( string $indent = null ) : Generator Set the code indent
setNamespace ( NamespaceGenerator $namespace ) : Generator Set the namespace generator object

Method Details

__construct() public method

Instantiate the code generator object
public __construct ( string $file, integer $type = Generator::CREATE_NONE ) : Generator
$file string
$type integer
return Generator

appendToBody() public method

Append to the code body
public appendToBody ( string $body, boolean $newline = true ) : Generator
$body string
$newline boolean
return Generator

code() public method

Access the code generator object
public code ( ) : ClassGenerator | InterfaceGenerator
return Pop\Code\Generator\ClassGenerator | Pop\Code\Generator\InterfaceGenerator

createClass() public method

Create a class generator object
public createClass ( ) : Generator
return Generator

createInterface() public method

Create a class generator object
public createInterface ( ) : Generator
return Generator

getBody() public method

Get the method body
public getBody ( ) : string
return string

getDocblock() public method

Access the docblock generator object
public getDocblock ( ) : DocblockGenerator
return Pop\Code\Generator\DocblockGenerator

getIndent() public method

Get the code indent
public getIndent ( ) : string
return string

getNamespace() public method

Access the namespace generator object
public getNamespace ( ) : NamespaceGenerator
return Pop\Code\Generator\NamespaceGenerator

output() public method

Output the code object directly.
public output ( boolean $download = false ) : Generator
$download boolean
return Generator

render() public method

Render method
public render ( boolean $ret = false ) : mixed
$ret boolean
return mixed

save() public method

Save the code object to disk.
public save ( string $to = null, boolean $append = false ) : void
$to string
$append boolean
return void

setBody() public method

Set the code body
public setBody ( string $body, boolean $newline = true ) : Generator
$body string
$newline boolean
return Generator

setClose() public method

Set the code close flag
public setClose ( boolean $close = false ) : Generator
$close boolean
return Generator

setDocblock() public method

Set the docblock generator object
public setDocblock ( DocblockGenerator $docblock ) : Generator
$docblock Pop\Code\Generator\DocblockGenerator
return Generator

setIndent() public method

Set the code indent
public setIndent ( string $indent = null ) : Generator
$indent string
return Generator

setNamespace() public method

Set the namespace generator object
public setNamespace ( NamespaceGenerator $namespace ) : Generator
$namespace Pop\Code\Generator\NamespaceGenerator
return Generator

Property Details

$allowed protected property

Array of allowed file types.
protected array $allowed
return array

$body protected property

Code body
protected string $body
return string

$close protected property

Flag to close the code file with ?>
protected bool $close
return boolean

$code protected property

Code object
protected ClassGenerator,Pop\Code\Generator|InterfaceGenerator,Pop\Code\Generator $code
return Pop\Code\Generator\ClassGenerator | Pop\Code\Generator\InterfaceGenerator

$docblock protected property

Docblock generator object
protected DocblockGenerator,Pop\Code\Generator $docblock
return Pop\Code\Generator\DocblockGenerator

$indent protected property

Code indent
protected string $indent
return string

$namespace protected property

Namespace generator object
protected NamespaceGenerator,Pop\Code\Generator $namespace
return Pop\Code\Generator\NamespaceGenerator