Turn API Blueprint Refract Parse Result (Drafter's output) into a traversable PHP data structure.
It should ease the processing of Drafter refract output.
You read your Drafter parse result, either JSON or YAML, you convert that to a PHP assoc array,
e.g. json_decode($parseresult, true)
in PHP and pass it into \Hmaus\Reynaldo\Parser\RefractParser::parse
.
Out comes an easily traversable object.
You can find a little example in /example
.
// load file and json_decode as assoc array into $apiDescription
$parser = new RefractParser();
$parseResult = $parser->parse($apiDescription);
$api = $parseResult->getApi();
// try to get the API title `$api->getApiTitle();`
// or the document description in markdown `$api->getApiDocumentDescription();`
foreach ($parseResult->getApi()->getResourceGroups() as $apiResourceGroup) {
foreach ($apiResourceGroup->getResources() as $apiResource) {
foreach ($apiResource->getTransitions() as $apiStateTransition) {
foreach ($apiStateTransition->getHttpTransactions() as $apiHttpTransaction) {
// inspect `$apiHttpTransaction->getHttpRequest()`, `$apiHttpTransaction->getHttpResponse()`
}
}
}
}
- PHP 7.0 or greater
The recommended way to install is by using composer:
$ composer require hmaus/reynaldo
This will install the PHP package with your application.
Reynaldo is licensed under the MIT License - see the LICENSE file for details.