/** * Create a instance and return it * * @param string $alias The alias for the program * @param array|null $parameters A array of parameters to add to the argument list * @return self */ static function create($alias, $parameters = null) { if (!isset(self::$progs[$alias])) { error("Cmd Alias '{$alias}' not available"); } $obj = new self(); $obj->params[] = escapeshellcmd(self::$progs[$alias]); if (is_array($parameters)) { foreach ($parameters as $value) { $obj->addParameter($value, true); } } return $obj; }
public static function fromArray(Project $project, $array) { $method = new self($array['name'], $array['line']); $method->shortDesc = $array['short_desc']; $method->longDesc = $array['long_desc']; $method->hint = $array['hint']; $method->hintDesc = $array['hint_desc']; $method->tags = $array['tags']; $method->modifiers = $array['modifiers']; $method->byRef = $array['is_by_ref']; $method->exceptions = $array['exceptions']; $method->errors = $array['errors']; foreach ($array['parameters'] as $parameter) { $parameter = ParameterReflection::fromArray($project, $parameter); $method->addParameter($parameter); } return $method; }