hhpack/package
最新稳定版本:1.5.0
Composer 安装命令:
composer require hhpack/package
包简介
Package utility library for vendor
README 文档
README
Package utility library for vendor.
Easily and quickly, and you can find a class or interface.
Basic usage
Find the source file from the package.
use HHPack\Package\VendorPackage; $sources = VendorPackage::fromItems([ Pair { 'package\\examples\\classes\\', realpath(__DIR__ . '/src') } ])->sources(); foreach ($sources as $source) { var_dump($source->name()); // /path/to/example.hh var_dump($source->directory()); // /path/to }
Selection of elements
You can select the elements in the following function.
- HHPack\Package\implementsInterface
- HHPack\Package\subclassOf
- HHPack\Package\classes
- HHPack\Package\abstractClasses
- HHPack\Package\traits
- HHPack\Package\interfaces
- HHPack\Package\instantiable
- HHPack\Package\startsWith
- HHPack\Package\endsWith
In the following we are looking for a interface and traits.
use HHPack\Package as package; use HHPack\Package\VendorPackage; $interfaces = VendorPackage::fromItems([ Pair { 'Package\\Examples\\Classes\\', realpath(__DIR__ . '/src') } ])->classes(package\interfaces()); foreach ($interfaces as $interface) { var_dump($interface->name()); // interface } $traits = VendorPackage::fromItems([ Pair { 'Package\\Examples\\Classes\\', realpath(__DIR__ . '/src') } ])->classes(package\traits()); foreach ($traits as $trait) { var_dump($trait->getName()); // trait }
Instantiation of class
Get an instance from the source files
use HHPack\Package\VendorPackage; $instances = VendorPackage::fromItems([ Pair { 'Package\\Examples\\Classes\\', realpath(__DIR__ . '/src') } ])->classes()->map(($class) ==> $class->instantiate()); foreach ($instances as $instance) { var_dump($instance); }
Pipeline of stream
You can build a pipeline.
You can achieve when implement the interface Middleware and Stream.
Please look at the example/pipeline.hh for details.
use HHPack\Package\VendorPackage; use HHPack\Package\Examples\Classes\FileStatTransformer; use HHPack\Package\Examples\Classes\FileStatOutput; $package = VendorPackage::fromItems([ Pair { 'Package\\Examples\\Classes\\', realpath(__DIR__ . '/src') } ]); $package->sources() ->pipeTo(new FileStatTransformer()) ->pipeTo(new FileStatOutput());
Run the test
composer install
composer test
统计信息
- 总下载量: 174
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 3
- 依赖项目数: 2
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2015-10-25