summaryrefslogtreecommitdiff
path: root/vendor/theseer/tokenizer/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/theseer/tokenizer/README.md')
-rw-r--r--vendor/theseer/tokenizer/README.md50
1 files changed, 50 insertions, 0 deletions
diff --git a/vendor/theseer/tokenizer/README.md b/vendor/theseer/tokenizer/README.md
new file mode 100644
index 000000000..e91ed8917
--- /dev/null
+++ b/vendor/theseer/tokenizer/README.md
@@ -0,0 +1,50 @@
+# Tokenizer
+
+A small library for converting tokenized PHP source code into XML.
+
+[![Test](https://github.com/theseer/tokenizer/actions/workflows/ci.yml/badge.svg)](https://github.com/theseer/tokenizer/actions/workflows/ci.yml)
+[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/theseer/tokenizer/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/theseer/tokenizer/?branch=master)
+[![Code Coverage](https://scrutinizer-ci.com/g/theseer/tokenizer/badges/coverage.png?b=master)](https://scrutinizer-ci.com/g/theseer/tokenizer/?branch=master)
+[![Build Status](https://scrutinizer-ci.com/g/theseer/tokenizer/badges/build.png?b=master)](https://scrutinizer-ci.com/g/theseer/tokenizer/build-status/master)
+
+## Installation
+
+You can add this library as a local, per-project dependency to your project using [Composer](https://getcomposer.org/):
+
+ composer require theseer/tokenizer
+
+If you only need this library during development, for instance to run your project's test suite, then you should add it as a development-time dependency:
+
+ composer require --dev theseer/tokenizer
+
+## Usage examples
+
+```php
+$tokenizer = new TheSeer\Tokenizer\Tokenizer();
+$tokens = $tokenizer->parse(file_get_contents(__DIR__ . '/src/XMLSerializer.php'));
+
+$serializer = new TheSeer\Tokenizer\XMLSerializer();
+$xml = $serializer->toXML($tokens);
+
+echo $xml;
+```
+
+The generated XML structure looks something like this:
+
+```xml
+<?xml version="1.0"?>
+<source xmlns="https://github.com/theseer/tokenizer">
+ <line no="1">
+ <token name="T_OPEN_TAG">&lt;?php </token>
+ <token name="T_DECLARE">declare</token>
+ <token name="T_OPEN_BRACKET">(</token>
+ <token name="T_STRING">strict_types</token>
+ <token name="T_WHITESPACE"> </token>
+ <token name="T_EQUAL">=</token>
+ <token name="T_WHITESPACE"> </token>
+ <token name="T_LNUMBER">1</token>
+ <token name="T_CLOSE_BRACKET">)</token>
+ <token name="T_SEMICOLON">;</token>
+ </line>
+</source>
+```