Annotation
in package
This represents an entire annotation from a docblock.
Tags
Table of Contents
Properties
- $end : int
- The position of the last line of the annotation in the docblock.
- $lines : array<int, Line>
- The lines that make up the annotation.
- $namespace : null|NamespaceAnalysis
- $namespaceUses : array<int, NamespaceUseAnalysis>
- $start : int
- The position of the first line of the annotation in the docblock.
- $tag : null|Tag
- The associated tag.
- $tags : array<int, string>
- All the annotation tag names with types.
- $types : null|array<int, string>
- The cached types.
- $typesContent : null|string
- Lazy loaded, cached types content.
Methods
- __construct() : mixed
- Create a new line instance.
- __toString() : string
- Get the string representation of object.
- getContent() : string
- Get the annotation content.
- getEnd() : int
- Get the end position of this annotation.
- getNormalizedTypes() : array<int, string>
- Get the normalized types associated with this annotation, so they can easily be compared.
- getStart() : int
- Get the start position of this annotation.
- getTag() : Tag
- Get the associated tag.
- getTagsWithTypes() : array<int, string>
- Get all the annotation tag names with types.
- getTypes() : array<int, string>
- Get the types associated with this annotation.
- remove() : void
- Remove this annotation by removing all its lines.
- setTypes() : void
- Set the types associated with this annotation.
- supportTypes() : bool
- clearCache() : void
- getTypesContent() : string|null
- Get the current types content.
Properties
$end
The position of the last line of the annotation in the docblock.
private
int
$end
$lines
The lines that make up the annotation.
private
array<int, Line>
$lines
$namespace
private
null|NamespaceAnalysis
$namespace
$namespaceUses
private
array<int, NamespaceUseAnalysis>
$namespaceUses
$start
The position of the first line of the annotation in the docblock.
private
int
$start
$tag
The associated tag.
private
null|Tag
$tag
$tags
All the annotation tag names with types.
private
static array<int, string>
$tags
= ['method', 'param', 'property', 'property-read', 'property-write', 'return', 'throws', 'type', 'var']
$types
The cached types.
private
null|array<int, string>
$types
$typesContent
Lazy loaded, cached types content.
private
null|string
$typesContent
Methods
__construct()
Create a new line instance.
public
__construct(array<int, Line> $lines[, null|NamespaceAnalysis $namespace = null ][, array<int, NamespaceUseAnalysis> $namespaceUses = [] ]) : mixed
Parameters
- $lines : array<int, Line>
- $namespace : null|NamespaceAnalysis = null
- $namespaceUses : array<int, NamespaceUseAnalysis> = []
__toString()
Get the string representation of object.
public
__toString() : string
Return values
stringgetContent()
Get the annotation content.
public
getContent() : string
Return values
stringgetEnd()
Get the end position of this annotation.
public
getEnd() : int
Return values
intgetNormalizedTypes()
Get the normalized types associated with this annotation, so they can easily be compared.
public
getNormalizedTypes() : array<int, string>
Return values
array<int, string>getStart()
Get the start position of this annotation.
public
getStart() : int
Return values
intgetTag()
Get the associated tag.
public
getTag() : Tag
Return values
TaggetTagsWithTypes()
Get all the annotation tag names with types.
public
static getTagsWithTypes() : array<int, string>
Return values
array<int, string>getTypes()
Get the types associated with this annotation.
public
getTypes() : array<int, string>
Return values
array<int, string>remove()
Remove this annotation by removing all its lines.
public
remove() : void
setTypes()
Set the types associated with this annotation.
public
setTypes(array<int, string> $types) : void
Parameters
- $types : array<int, string>
supportTypes()
public
supportTypes() : bool
Return values
boolclearCache()
private
clearCache() : void
getTypesContent()
Get the current types content.
private
getTypesContent() : string|null
Be careful modifying the underlying line as that won't flush the cache.