manialib / maniascript
Autoloader, Compiler and a few Maniascript libraries to ease the developement of Maniascript applications.
Requires
- php: >=5.5
- psr/log: ~1.0
This package is auto-updated.
Last update: 2024-12-19 09:27:10 UTC
README
Unstable!
Standalone PHP component to help developing Maniascript applications for the Manialink browser. This is part of Manialib.
Autoloader
Manialib\Maniascript\Autoloader
provides a way to automatically load a Maniascript file, given it's library name (eg. "Manialib/Logger.Script.txt") and a set of include paths. It's inspired from PHP's PSR-4.
See Manialib\Maniascript\AutoloaderInterface for reference.
Compiler
Manialib\Maniascript\Compiler
helps partitioning a Maniascript application in several files when you cannot use normal #Include directives (eg. when writing a Maniascript application for the Manialink browser). It will replace the "include as" directives recursively, eventually providing a single script.
Libraries
todo
Limitations
Right now, included libraries must be written with "full namespaces", compared to standard #Includes where you only define the function name, not the fully qualified function name.
Eg. if you're using #Include "Manialib/Logger.Script.txt" as Logger
and Logger::Info()
, the Info()
function in the Logger library will be defined as Manialib_Logger_Info()
whereas with standard #Includes it would be defined as Info()
.
Example
See /example