2011-09-21 21:43:19 +02:00
|
|
|
<?php
|
|
|
|
|
|
|
|
interface PHPParser_Node
|
|
|
|
{
|
|
|
|
/**
|
|
|
|
* Gets the type of the node.
|
|
|
|
*
|
|
|
|
* @return string Type of the node
|
|
|
|
*/
|
|
|
|
public function getType();
|
|
|
|
|
2011-12-02 17:52:03 +01:00
|
|
|
/**
|
|
|
|
* Gets the names of the sub nodes.
|
|
|
|
*
|
|
|
|
* @return array Names of sub nodes
|
|
|
|
*/
|
|
|
|
public function getSubNodeNames();
|
|
|
|
|
2011-09-21 21:43:19 +02:00
|
|
|
/**
|
|
|
|
* Gets line the node started in.
|
|
|
|
*
|
|
|
|
* @return int Line
|
|
|
|
*/
|
|
|
|
public function getLine();
|
|
|
|
|
2011-11-06 17:07:38 +01:00
|
|
|
/**
|
|
|
|
* Sets line the node started in.
|
|
|
|
*
|
|
|
|
* @param int $line Line
|
|
|
|
*/
|
|
|
|
public function setLine($line);
|
|
|
|
|
2011-09-21 21:43:19 +02:00
|
|
|
/**
|
|
|
|
* Gets the nearest doc comment.
|
|
|
|
*
|
|
|
|
* @return null|string Nearest doc comment or null
|
|
|
|
*/
|
|
|
|
public function getDocComment();
|
2011-11-06 17:07:38 +01:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Sets the nearest doc comment.
|
|
|
|
*
|
|
|
|
* @param null|string $docComment Nearest doc comment or null
|
|
|
|
*/
|
|
|
|
public function setDocComment($docComment);
|
2012-04-03 20:04:24 +02:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Sets an attribute on a node.
|
|
|
|
*
|
|
|
|
* @param string $key
|
|
|
|
* @param mixed $value
|
|
|
|
*/
|
|
|
|
public function setAttribute($key, $value);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Returns whether an attribute exists.
|
|
|
|
*
|
|
|
|
* @param string $key
|
|
|
|
*
|
|
|
|
* @return Boolean
|
|
|
|
*/
|
|
|
|
public function hasAttribute($key);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Returns the value of an attribute.
|
|
|
|
*
|
|
|
|
* @param string $key
|
|
|
|
* @param mixed $default
|
|
|
|
*
|
|
|
|
* @return mixed
|
|
|
|
*/
|
|
|
|
public function getAttribute($key, $default = null);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Returns all attributes for the given node.
|
|
|
|
*
|
|
|
|
* @return array
|
|
|
|
*/
|
|
|
|
public function getAttributes();
|
2011-09-21 21:43:19 +02:00
|
|
|
}
|