src/Scope.php
public function given($name, $closure)
    {
        if (isset(static::$_blacklist[$name])) {
            throw new Exception("Sorry `{$name}` is a reserved keyword, it can't be used as a scope variable.");
        }

        $given = new Given($closure);
        if (array_key_exists($name, $this->_given)) {
            $given->{$name} = $this->_given[$name](Suite::current()->scope());
        }
        $this->_given[$name] = $given;
        return $this;
    }
public function given($name, $closure)
    {
        if (isset(static::$_blacklist[$name])) {
            throw new Exception("Sorry `{$name}` is a reserved keyword, it can't be used as a scope variable.");
        }

        $given = new Given($closure);
        if (array_key_exists($name, $this->_given)) {
            $given->{$name} = $this->_given[$name](Suite::current()->scope());
        }
        $this->_given[$name] = $given;
        return $this;
    }
public function given ( $ name , $ closure ) { if ( isset ( static :: $ _blacklist [ $ name ] ) ) { throw new Exception ( "Sorry `{$name}` is a reserved keyword, it can't be used as a scope variable." ) ; } $ given = new Given ( $ closure ) ; if ( array_key_exists ( $ name , $ this -> _given ) ) { $ given -> { $ name } = $ this -> _given [ $ name ] ( Suite :: current ( ) -> scope ( ) ) ; } $ this -> _given [ $ name ] = $ given ; return $ this ; }
Sets a lazy loaded data.

@param  string  $name    The lazy loaded variable name.
@param  Closure $closure The lazily executed closure.
@return object
Sets a lazy loaded data .