Pelzini

This is the code documentation for the Pelzini project

source of /processor/fake_namespace_dirs_transformer.php

Contains the QualityCheckTransformer class
  1. <?php
  2. /*
  3. Copyright 2008 Josh Heidenreich
  4.  
  5. This file is part of Pelzini.
  6.  
  7. Pelzini is free software: you can redistribute it and/or modify
  8. it under the terms of the GNU General Public License as published by
  9. the Free Software Foundation, either version 3 of the License, or
  10. (at your option) any later version.
  11.  
  12. Pelzini is distributed in the hope that it will be useful,
  13. but WITHOUT ANY WARRANTY; without even the implied warranty of
  14. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  15. GNU General Public License for more details.
  16.  
  17. You should have received a copy of the GNU General Public License
  18. along with Pelzini. If not, see <http://www.gnu.org/licenses/>.
  19. */
  20.  
  21.  
  22. /**
  23.  * Contains the {@link QualityCheckTransformer} class
  24.  *
  25.  * @package Transformers
  26.  * @author Josh
  27.  * @since 0.2
  28.  **/
  29.  
  30. /**
  31.  * This is a transformer that does quality checks on the codebase
  32.  *
  33.  * It checks that the documentation has the required tags. Currently the 'required tags' are only the summary
  34.  *
  35.  * The documentation is created in a report called the {@link Quality check report}.
  36.  **/
  37. class FakeNamespaceDirsTransformer extends Transformer {
  38.  
  39. /**
  40.   * Set up the quality check transformer
  41.   *
  42.   * @param array $required_tags Docblock tags which will be reported if missing
  43.   **/
  44. public function __construct()
  45. {
  46. }
  47.  
  48.  
  49. /**
  50.   * Transforms the data model before outputting.
  51.   *
  52.   * This transformer generates a report of objects that do not have good enough documentation
  53.   *
  54.   * @param array $parser_model The data model to transform
  55.   * @return array The new data model, or null if there was an error
  56.   **/
  57. public function transform(&$parser_model)
  58. {
  59. foreach ($parser_model as $item) {
  60. if ($item instanceof ParserFile) {
  61. $parts = explode('/', dirname($item->name));
  62. $parts = array_filter($parts);
  63. $item->namespace = $parts;
  64. }
  65. }
  66.  
  67. return $parser_model;
  68. }
  69.  
  70. }
  71.  
  72.