Вход Регистрация
Файл: gapps/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Closure.php
Строк: 57
<?php

namespace PhpParserNodeExpr;

use 
PhpParserNode;
use 
PhpParserNodeExpr;
use 
PhpParserNodeFunctionLike;

class 
Closure extends Expr implements FunctionLike
{
    
/** @var bool Whether the closure is static */
    
public $static;
    
/** @var bool Whether to return by reference */
    
public $byRef;
    
/** @var NodeParam[] Parameters */
    
public $params;
    
/** @var ClosureUse[] use()s */
    
public $uses;
    
/** @var null|string|NodeName Return type */
    
public $returnType;
    
/** @var Node[] Statements */
    
public $stmts;

    
/**
     * Constructs a lambda function node.
     *
     * @param array $subNodes   Array of the following optional subnodes:
     *                          'static'     => false  : Whether the closure is static
     *                          'byRef'      => false  : Whether to return by reference
     *                          'params'     => array(): Parameters
     *                          'uses'       => array(): use()s
     *                          'returnType' => null   : Return type
     *                          'stmts'      => array(): Statements
     * @param array $attributes Additional attributes
     */
    
public function __construct(array $subNodes = array(), array $attributes = array()) {
        
parent::__construct($attributes);
        
$this->static = isset($subNodes['static']) ? $subNodes['static'] : false;
        
$this->byRef = isset($subNodes['byRef']) ? $subNodes['byRef'] : false;
        
$this->params = isset($subNodes['params']) ? $subNodes['params'] : array();
        
$this->uses = isset($subNodes['uses']) ? $subNodes['uses'] : array();
        
$this->returnType = isset($subNodes['returnType']) ? $subNodes['returnType'] : null;
        
$this->stmts = isset($subNodes['stmts']) ? $subNodes['stmts'] : array();
    }

    public function 
getSubNodeNames() {
        return array(
'static''byRef''params''uses''returnType''stmts');
    }

    public function 
returnsByRef() {
        return 
$this->byRef;
    }

    public function 
getParams() {
        return 
$this->params;
    }

    public function 
getReturnType() {
        return 
$this->returnType;
    }

    public function 
getStmts() {
        return 
$this->stmts;
    }
}
Онлайн: 1
Реклама