Commit Graph

62 Commits (7e7914befa16b82b56e6e5b2e355a22a4513b419)
 

Author SHA1 Message Date
Hugo Thunnissen b338aa9b75 Fix most of the byte-compilation warnings 3 years ago
Hugo Thunnissen 4430aaccb9 Rework parser code
The parser is now JIT compiled. Parser functions are generated and byte-compiled on the
fly as needed and stored in an obarray. Handler functions are stored in an obarray as well
and are compiled at load time. See docstrings and code for more information.

Macro use has been brought back to a minimum and macros have been reworked to make the
code easier to reason about.

To be able to redifine parser functions during runtime,
"M-x phpinspect-purge-parser-cache" has been added.

To redifine a handler function, one can use `phpinspect-defhandler` after loading
phpinspect.el and purge the parser cache to make sure that the new function definition is
used.
3 years ago
Hugo Thunnissen 811a9a9141 Add more tests for the parser code 3 years ago
Hugo Thunnissen f7d88a90f4 Implement some general tests for the parser code 3 years ago
Hugo Thunnissen f7c2a49b25 Remove dependency on php-project.el
Remove dependency on php-project.el by implementing a standalone version of
`phpinspect--get-project-root`.
3 years ago
Kenta Usami bbc37bea32 Update README code format and to use setq-local
setq-local was added in Emacs 24.3 (released in 2013).
3 years ago
Hugo Thunnissen 8d3bd21015 Add license information 3 years ago
Kenta Usami 0350069e34 Fix native (built-in) type names
Fix phpinspect-native-types to valid PHP built-in type names.

See the code below for the types that can be described as valid return types:
https://3v4l.org/fJgLA#v8.0.10
3 years ago
Hugo Thunnissen d6c63ef6f4 Truncate "uses_own" index file before filling the index 3 years ago
Hugo Thunnissen ad12203a91 Add more parts of phpns that were apparently still required 3 years ago
Hugo Thunnissen 50d2bfeebe Change indexer's cache dir from/to .cache/{phpns,phpinspect} 3 years ago
Hugo Thunnissen 681f13d4de Initial commit: Move out of personal dotfile repository. 3 years ago