f0d11b197151010aabe88d58a8c81793aecc5890
[mdref/mdref] / bin / stub2ref
1 #!/usr/bin/env php
2 <?php
3
4 namespace mdref;
5
6 require_once $_composer_autoload_path ?? __DIR__."/../vendor/autoload.php";
7
8 if ($argc < 3) {
9 fprintf(STDERR, "Usage: cd ref-<ns> && %s <ns> <stub.php>\n", $argv[0]);
10 exit(1);
11 }
12
13 $namespace = $argv[1];
14 require_once $argv[2];
15
16 if (!file_exists("$namespace.mdref")) {
17 fprintf(STDERR, "Missing $namespace.mdref; generated default.\n");
18 file_put_contents("$namespace.mdref", "./%s");
19 }
20 if (!file_exists("$namespace.md")) {
21 fprintf(STDERR, "Missing $namespace.md; hard linking README.md\n");
22 link(dirname($argv[2]) . "/README.md", "$namespace.md");
23 }
24
25 $inspector = new Inspector;
26 $inspector->inspectNamespace($namespace);
27
28 $generator = new Generator;
29 $generator->generateFunctions($inspector->getFunctions());
30 $generator->generateClasses($inspector->getClasses());