Abstract Class Phalcon\Annotations\Adapter\AbstractAdapter
Source on GitHub
Namespace |
Phalcon\Annotations\Adapter |
|
Uses |
Phalcon\Annotations\Reader, Phalcon\Annotations\Exception, Phalcon\Annotations\Collection, Phalcon\Annotations\Reflection, Phalcon\Annotations\ReaderInterface |
|
Implements |
AdapterInterface |
This is the base class for Phalcon\Annotations adapters
Properties
/**
* @var array
*/
protected annotations;
/**
* @var Reader
*/
protected reader;
Methods
public function get( mixed $className ): Reflection;
Parses or retrieves all the annotations found in a class
public function getConstant( string $className, string $constantName ): Collection;
Returns the annotations found in a specific constant
public function getConstants( string $className ): array;
Returns the annotations found in all the class’ constants
public function getMethod( string $className, string $methodName ): Collection;
Returns the annotations found in a specific method
public function getMethods( string $className ): array;
Returns the annotations found in all the class’ methods
public function getProperties( string $className ): array;
Returns the annotations found in all the class’ properties
public function getProperty( string $className, string $propertyName ): Collection;
Returns the annotations found in a specific property
public function getReader(): ReaderInterface;
Returns the annotation reader
public function setReader( ReaderInterface $reader );
Sets the annotations parser
Interface Phalcon\Annotations\Adapter\AdapterInterface
Source on GitHub
Namespace |
Phalcon\Annotations\Adapter |
|
Uses |
Phalcon\Annotations\Reflection, Phalcon\Annotations\Collection, Phalcon\Annotations\ReaderInterface |
This interface must be implemented by adapters in Phalcon\Annotations
Methods
public function get( string $className ): Reflection;
Parses or retrieves all the annotations found in a class
public function getConstant( string $className, string $constantName ): Collection;
Returns the annotations found in a specific constant
public function getConstants( string $className ): array;
Returns the annotations found in all the class’ constants
public function getMethod( string $className, string $methodName ): Collection;
Returns the annotations found in a specific method
public function getMethods( string $className ): array;
Returns the annotations found in all the class’ methods
public function getProperties( string $className ): array;
Returns the annotations found in all the class’ methods
public function getProperty( string $className, string $propertyName ): Collection;
Returns the annotations found in a specific property
public function getReader(): ReaderInterface;
Returns the annotation reader
public function setReader( ReaderInterface $reader );
Sets the annotations parser
Class Phalcon\Annotations\Adapter\Apcu
Source on GitHub
Namespace |
Phalcon\Annotations\Adapter |
|
Uses |
Phalcon\Annotations\Reflection |
|
Extends |
AbstractAdapter |
Stores the parsed annotations in APCu. This adapter is suitable for production
use Phalcon\Annotations\Adapter\Apcu;
$annotations = new Apcu();
Properties
/**
* @var string
*/
protected prefix = ;
/**
* @var int
*/
protected ttl = 172800;
Methods
public function __construct( array $options = [] );
public function read( string $key ): Reflection | bool;
Reads parsed annotations from APCu
public function write( string $key, Reflection $data ): bool;
Writes parsed annotations to APCu
Class Phalcon\Annotations\Adapter\Memory
Source on GitHub
Namespace |
Phalcon\Annotations\Adapter |
|
Uses |
Phalcon\Annotations\Reflection |
|
Extends |
AbstractAdapter |
Stores the parsed annotations in memory. This adapter is the suitable development/testing
Properties
/**
* @var mixed
*/
protected data;
Methods
public function read( string $key ): Reflection | bool;
Reads parsed annotations from memory
public function write( string $key, Reflection $data ): void;
Writes parsed annotations to memory
Class Phalcon\Annotations\Adapter\Stream
Source on GitHub
Namespace |
Phalcon\Annotations\Adapter |
|
Uses |
Phalcon\Annotations\Reflection, Phalcon\Annotations\Exception, RuntimeException |
|
Extends |
AbstractAdapter |
Stores the parsed annotations in files. This adapter is suitable for production
use Phalcon\Annotations\Adapter\Stream;
$annotations = new Stream(
[
"annotationsDir" => "app/cache/annotations/",
]
);
Properties
/**
* @var string
*/
protected annotationsDir = ./;
Methods
public function __construct( array $options = [] );
public function read( string $key ): Reflection | bool | int;
Reads parsed annotations from files
public function write( string $key, Reflection $data ): void;
Writes parsed annotations to files
Class Phalcon\Annotations\Annotation
Source on GitHub
Namespace |
Phalcon\Annotations |
Represents a single annotation in an annotations collection
Properties
/**
* Annotation Arguments
*
* @var array
*/
protected arguments;
/**
* Annotation ExprArguments
*
* @var array
*/
protected exprArguments;
/**
* Annotation Name
*
* @var string|null
*/
protected name;
Methods
public function __construct( array $reflectionData );
Phalcon\Annotations\Annotation constructor
public function getArgument( mixed $position ): mixed | null;
Returns an argument in a specific position
public function getArguments(): array;
Returns the expression arguments
public function getExprArguments(): array;
Returns the expression arguments without resolving
public function getExpression( array $expr ): mixed;
Resolves an annotation expression
public function getName(): null | string;
Returns the annotation’s name
public function getNamedArgument( string $name ): mixed | null;
Returns a named argument
public function getNamedParameter( string $name ): mixed;
Returns a named parameter
public function hasArgument( mixed $position ): bool;
Returns an argument in a specific position
public function numberArguments(): int;
Returns the number of arguments that the annotation has
Class Phalcon\Annotations\AnnotationsFactory
Source on GitHub
Namespace |
Phalcon\Annotations |
|
Uses |
Phalcon\Annotations\Adapter\AdapterInterface, Phalcon\Factory\AbstractFactory, Phalcon\Support\Helper\Arr\Get |
|
Extends |
AbstractFactory |
Factory to create annotations components
Methods
public function __construct( array $services = [] );
AdapterFactory constructor.
public function load( mixed $config ): mixed;
public function newInstance( string $name, array $options = [] ): AdapterInterface;
Create a new instance of the adapter
protected function getExceptionClass(): string;
protected function getServices(): array;
Returns the available adapters
Class Phalcon\Annotations\Collection
Source on GitHub
Namespace |
Phalcon\Annotations |
|
Uses |
Countable, Iterator |
|
Implements |
Iterator, Countable |
Represents a collection of annotations. This class allows to traverse a group of annotations easily
// Traverse annotations
foreach ($classAnnotations as $annotation) {
echo "Name=", $annotation->getName(), PHP_EOL;
}
// Check if the annotations has a specific
var_dump($classAnnotations->has("Cacheable"));
// Get an specific annotation in the collection
$annotation = $classAnnotations->get("Cacheable");
Properties
/**
* @var array
*/
protected annotations;
/**
* @var int
*/
protected position = 0;
Methods
public function __construct( array $reflectionData = [] );
Phalcon\Annotations\Collection constructor
public function count(): int;
Returns the number of annotations in the collection
public function current(): mixed;
Returns the current annotation in the iterator
public function get( string $name ): Annotation;
Returns the first annotation that match a name
public function getAll( string $name ): Annotation[];
Returns all the annotations that match a name
public function getAnnotations(): Annotation[];
Returns the internal annotations as an array
public function has( string $name ): bool;
Check if an annotation exists in a collection
public function key(): int;
Returns the current position/key in the iterator
public function next(): void;
Moves the internal iteration pointer to the next position
public function rewind(): void;
Rewinds the internal iterator
public function valid(): bool;
Check if the current annotation in the iterator is valid
Class Phalcon\Annotations\Exception
Source on GitHub
Namespace |
Phalcon\Annotations |
|
Extends |
\Exception |
Class for exceptions thrown by Phalcon\Annotations
Class Phalcon\Annotations\Reader
Source on GitHub
Namespace |
Phalcon\Annotations |
|
Uses |
ReflectionClass |
|
Implements |
ReaderInterface |
Parses docblocks returning an array with the found annotations
Methods
public function parse( string $className ): array;
Reads annotations from the class docblocks, its methods and/or properties
public static function parseDocBlock( string $docBlock, mixed $file = null, mixed $line = null ): array;
Parses a raw doc block returning the annotations found
Interface Phalcon\Annotations\ReaderInterface
Source on GitHub
Namespace |
Phalcon\Annotations |
Parses docblocks returning an array with the found annotations
Methods
public function parse( string $className ): array;
Reads annotations from the class docblocks, its constants, properties and methods
public static function parseDocBlock( string $docBlock, mixed $file = null, mixed $line = null ): array;
Parses a raw docblock returning the annotations found
Class Phalcon\Annotations\Reflection
Source on GitHub
Namespace |
Phalcon\Annotations |
Allows to manipulate the annotations reflection in an OO manner
use Phalcon\Annotations\Reader;
use Phalcon\Annotations\Reflection;
// Parse the annotations in a class
$reader = new Reader();
$parsing = $reader->parse("MyComponent");
// Create the reflection
$reflection = new Reflection($parsing);
// Get the annotations in the class docblock
$classAnnotations = $reflection->getClassAnnotations();
Properties
/**
* @var Collection|null
*/
protected classAnnotations;
/**
* @var array
*/
protected constantAnnotations;
/**
* @var array
*/
protected propertyAnnotations;
/**
* @var array
*/
protected methodAnnotations;
/**
* @var array
*/
protected reflectionData;
Methods
public function __construct( array $reflectionData = [] );
public function getClassAnnotations(): Collection | null;
Returns the annotations found in the class docblock
public function getConstantsAnnotations(): Collection[];
Returns the annotations found in the constants’ docblocks
public function getMethodsAnnotations(): Collection[];
Returns the annotations found in the methods’ docblocks
public function getPropertiesAnnotations(): Collection[];
Returns the annotations found in the properties’ docblocks
public function getReflectionData(): array;
Returns the raw parsing intermediate definitions used to construct the reflection