Umožnit nastavení shortcut přes config.neon

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
LeonardoCA
Člen | 296
+
0
-

Napadlo mne, že by byla pěkná feature umožnit nadefinování vlastních shortcut pro funkce podobné dump() přes config.neon

Přidat shortcut pomocí ContainerExtension umím:

public function afterCompile(Nette\Utils\PhpGenerator\ClassType $class)
{
    $initialize = $class->methods['initialize'];

    // Add shortcut
    $initialize->addBody("require_once '" . dirname(__FILE__) . "/../shortcuts/smartDump.php';");
}

Využívám faktu, že funkce z includovaných souborů mají globální scope i když jsou vloženy v metodě nějaké třídy.

Aby byla možnost uživatelsky definovat shorcut, musel by se název funkce definující shortcut změnit a to buď

  1. přímo do containeru vygenerovat funkci a přidat nakonec za definici třídy (zatím nevím jak bych to dokázal)
  2. nebo by se musela funkce vygenerovat do samostatného souboru do adresáře temp a ten pak vložit tak jak to mám udělané teď.

Jakou cestu by jste raději volili?

A mělo by smysl na to napsat samostatné extension? Využil by to někdo?

Editoval LeonardoCA (2. 11. 2012 20:45)

Felix
Nette Core | 1189
+
0
-

Podle me uz to je dost specificke. Shortcuts vetsinou nacitam v bootstrapu, tak jestli dam include_once nebo do neonu napisu cestu, vyjde podle me na stejno.

Editoval Felix (3. 11. 2012 9:08)