Page Menu
Home
WickedGov Phorge
Search
Configure Global Search
Log In
Files
F1430422
Trait_.php
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Flag For Later
Award Token
Size
1 KB
Referenced Files
None
Subscribers
None
Trait_.php
View Options
<?php
declare
(
strict_types
=
1
);
namespace
PhpParser\Builder
;
use
PhpParser
;
use
PhpParser\BuilderHelpers
;
use
PhpParser\Node
;
use
PhpParser\Node\Stmt
;
class
Trait_
extends
Declaration
{
protected
$name
;
protected
$uses
=
[];
protected
$properties
=
[];
protected
$methods
=
[];
/** @var Node\AttributeGroup[] */
protected
$attributeGroups
=
[];
/**
* Creates an interface builder.
*
* @param string $name Name of the interface
*/
public
function
__construct
(
string
$name
)
{
$this
->
name
=
$name
;
}
/**
* Adds a statement.
*
* @param Stmt|PhpParser\Builder $stmt The statement to add
*
* @return $this The builder instance (for fluid interface)
*/
public
function
addStmt
(
$stmt
)
{
$stmt
=
BuilderHelpers
::
normalizeNode
(
$stmt
);
if
(
$stmt
instanceof
Stmt\Property
)
{
$this
->
properties
[]
=
$stmt
;
}
elseif
(
$stmt
instanceof
Stmt\ClassMethod
)
{
$this
->
methods
[]
=
$stmt
;
}
elseif
(
$stmt
instanceof
Stmt\TraitUse
)
{
$this
->
uses
[]
=
$stmt
;
}
else
{
throw
new
\LogicException
(
sprintf
(
'Unexpected node of type "%s"'
,
$stmt
->
getType
()));
}
return
$this
;
}
/**
* Adds an attribute group.
*
* @param Node\Attribute|Node\AttributeGroup $attribute
*
* @return $this The builder instance (for fluid interface)
*/
public
function
addAttribute
(
$attribute
)
{
$this
->
attributeGroups
[]
=
BuilderHelpers
::
normalizeAttribute
(
$attribute
);
return
$this
;
}
/**
* Returns the built trait node.
*
* @return Stmt\Trait_ The built interface node
*/
public
function
getNode
()
:
PhpParser\Node
{
return
new
Stmt\Trait_
(
$this
->
name
,
[
'stmts'
=>
array_merge
(
$this
->
uses
,
$this
->
properties
,
$this
->
methods
),
'attrGroups'
=>
$this
->
attributeGroups
,
],
$this
->
attributes
);
}
}
File Metadata
Details
Attached
Mime Type
text/x-php
Expires
Sat, May 16, 18:43 (5 h, 40 m)
Storage Engine
local-disk
Storage Format
Raw Data
Storage Handle
29/39/8f9638bd5fcde201f51b3aca3563
Default Alt Text
Trait_.php (1 KB)
Attached To
Mode
rMWPROD MediaWiki Production
Attached
Detach File
Event Timeline
Log In to Comment