iMakefile
MMO\core\interfaces · 1 symbol · generated 5 Oct 2026
A build step that knows its output file and the files it depends on, and rebuilds the output only when one of them changed (tWithMakefiles).
interface MMO\core\interfaces\iMakefile- Namespace
MMO\core\interfaces
Methods10
Depend on every file of a folder.
abstract function addDependFolder(
string $folder,
?string $inc = null,
?string $exc = null,
bool $first = false
)| $folder | string | |
| $inc = null | null | string | regex of the files to include |
| $exc = null | null | string | regex of the files to exclude |
| $first = false | bool | if true, put them before the existing ones |
| returns | | |
abstract function addDepends(array|string $depends, bool $first = false)| $depends | array | string | one dependency, or several |
| $first = false | bool | if true, put them before the existing ones |
| returns | | |
abstract function autoMake(array $opts = [])| $opts = [] | array | |
| returns | | false if nothing was made (up to date), otherwise what the build returned |
abstract function getDepends(string $basepath = '')| $basepath = '' | string | |
| returns | | the dependencies, resolved against $basepath when given |
abstract function getFilename(): ?stringabstract function isUpToDate(string $filename)| $filename | string | |
| returns | | true if $filename exists and no dependency is newer |
abstract function make(string $filename, array $opts = [])| $filename | string | |
| $opts = [] | array | |
| returns | | false if nothing was made, otherwise what the build returned |
abstract function removeDepend(string $depend)| $depend | string | |
| returns | | false if $depend was not a dependency |
abstract function setDepends(array $depends)| $depends | array | replaces every dependency |
| returns | | |
abstract function setFilename(?string $filename)