1: <?php
2: /**
3: * PHP Token Reflection
4: *
5: * Version 1.3.1
6: *
7: * LICENSE
8: *
9: * This source file is subject to the new BSD license that is bundled
10: * with this library in the file LICENSE.
11: *
12: * @author Ondřej Nešpor
13: * @author Jaroslav Hanslík
14: */
15:
16: namespace TokenReflection;
17:
18: /**
19: * Common reflection constant interface.
20: */
21: interface IReflectionConstant extends IReflection
22: {
23: /**
24: * Returns the unqualified name (UQN).
25: *
26: * @return string
27: */
28: public function getShortName();
29:
30: /**
31: * Returns the declaring class reflection.
32: *
33: * @return \TokenReflection\IReflectionClass
34: */
35: public function getDeclaringClass();
36:
37: /**
38: * Returns the declaring class name.
39: *
40: * @return string
41: */
42: public function getDeclaringClassName();
43:
44: /**
45: * Returns the namespace name.
46: *
47: * @return string
48: */
49: public function getNamespaceName();
50:
51: /**
52: * Returns if the constant is defined within a namespace.
53: *
54: * @return boolean
55: */
56: public function inNamespace();
57:
58: /**
59: * Returns imported namespaces and aliases from the declaring namespace.
60: *
61: * @return array
62: */
63: public function getNamespaceAliases();
64:
65: /**
66: * Returns the file name the reflection object is defined in.
67: *
68: * @return string
69: */
70: public function getFileName();
71:
72: /**
73: * Returns the definition start line number in the file.
74: *
75: * @return integer
76: */
77: public function getStartLine();
78:
79: /**
80: * Returns the definition end line number in the file.
81: *
82: * @return integer
83: */
84: public function getEndLine();
85:
86: /**
87: * Returns the appropriate docblock definition.
88: *
89: * @return string|boolean
90: */
91: public function getDocComment();
92:
93: /**
94: * Returns the constant value.
95: *
96: * @return mixed
97: */
98: public function getValue();
99:
100: /**
101: * Returns the part of the source code defining the constant value.
102: *
103: * @return string
104: */
105: public function getValueDefinition();
106:
107: /**
108: * Returns the string representation of the reflection object.
109: *
110: * @return string
111: */
112: public function __toString();
113: /**
114: * Returns if the constant definition is valid.
115: *
116: * That means that the source code is valid and the constant name is unique within parsed files.
117: *
118: * @return boolean
119: */
120: public function isValid();
121:
122: /**
123: * Returns if the constant is deprecated.
124: *
125: * @return boolean
126: */
127: public function isDeprecated();
128: }