summaryrefslogtreecommitdiff
path: root/poc/poc02-compiling-cake/src/php-weave/cakephp_weaver.class.php
diff options
context:
space:
mode:
authorLudovic Pouzenc <ludovic@pouzenc.fr>2012-08-03 19:15:04 +0000
committerLudovic Pouzenc <ludovic@pouzenc.fr>2012-08-03 19:15:04 +0000
commit537fb688fe12b04df433da95e8a68f0b89d70ebd (patch)
tree5d522b7c6c81af50ccf20685c55260a75691050a /poc/poc02-compiling-cake/src/php-weave/cakephp_weaver.class.php
parent7c4143798b972dc5bbf566e023e47e575a548409 (diff)
download2012-php-weave-537fb688fe12b04df433da95e8a68f0b89d70ebd.tar.gz
2012-php-weave-537fb688fe12b04df433da95e8a68f0b89d70ebd.tar.bz2
2012-php-weave-537fb688fe12b04df433da95e8a68f0b89d70ebd.zip
Parsing du code applicatif. Fractorisé avec le parsing du code du Framework, ajout d'un pruning pour les batteries de tests de CakePHP lui-même.
git-svn-id: file:///var/svn/2012-php-weave/trunk@14 d972a294-176a-4cf9-8ea1-fcd5b0c30f5c
Diffstat (limited to 'poc/poc02-compiling-cake/src/php-weave/cakephp_weaver.class.php')
-rw-r--r--poc/poc02-compiling-cake/src/php-weave/cakephp_weaver.class.php27
1 files changed, 11 insertions, 16 deletions
diff --git a/poc/poc02-compiling-cake/src/php-weave/cakephp_weaver.class.php b/poc/poc02-compiling-cake/src/php-weave/cakephp_weaver.class.php
index 198b113..8439670 100644
--- a/poc/poc02-compiling-cake/src/php-weave/cakephp_weaver.class.php
+++ b/poc/poc02-compiling-cake/src/php-weave/cakephp_weaver.class.php
@@ -23,32 +23,27 @@ class CakePHPWeaver extends AbstractWeaver {
}
public function parseFrameworkConfig($fw_props) {
+ // TODO : Not used for the moment...
return array();
}
public function parseFrameworkCode($fw_props, $fw_conf, $cache_path) {
- $filelist=$this->findAllFiles($fw_props['CAKE_CORE_INCLUDE_PATH'], '/(\.php|\.ctp)$/', '/^\.svn$/');
- //print_r($filelist);
-
- $env=$fw_props; //TODO : More things here ?
- foreach ($filelist as $f) {
- $cache_filepath=$cache_path . "/" . sha1($f) . "-" . substr(sha1(print_r($env,true)),-8,8) . ".ast";
- // If the cache is already up to date, skip parsing
- if ( $stat_cache=stat($cache_filepath) ) {
- $stat_source=stat($f);
- if ($stat_cache['mtime'] >= $stat_source['mtime'] ) continue;
- }
-
- $ast=$this->parseAndWalk($f, null, $env);
- $this->serializeAST($ast, $f, $cache_filepath);
- }
+ dbg(0,"Parsing and caching all framework code");
+ $fwdir=$fw_props['CAKE_CORE_INCLUDE_PATH'];
+ $this->parseAndCacheSourceTree($fwdir, $cache_path, '/(\.php|\.ctp)$/', '/^(\.svn|Test|TestSuite)$/', $fw_props, null);
+ return array(); //$fw_extra is unused
}
public function parseApplicationCode($fw_props, $fw_conf, $fw_extra, $cache_path) {
-
+ dbg(0,"Parsing and caching all application code");
+ $appdir=$fw_props['ROOT'] . $fw_props['DS'] . $fw_props['APP_DIR'];
+ $this->parseAndCacheSourceTree($appdir, $cache_path, '/(\.php|\.ctp)$/', '/^\.svn$/', $fw_props, null);
+ return array(); //$app_extra is unused
}
public function computePageList($fw_props, $fw_conf, $fw_extra, $app_extra) {
+ dbg(0,"Computing pagelist");
+ //TODO Not yet implemented
return array(
'page1' => array(),
'page2' => array(),