/** * Generates markdown output for a specified class * @param string $class e.g. `PDO` or a user class like `diversen\markdownDocs` * @return void the method adds to $output */ public function classToMD($class, $options = []) { $r = new ClassType($class); $this->output .= $this->sectionHeader('Class: ' . $r->getName(), 3); // Class description $this->output .= $r->getDescription() . $this->getNL(); // Get methods and props $methods = $r->getMethods(); $props = $r->getDefaultProperties(); // Parse properties $this->output .= $this->sectionHeader("Properties"); $this->generatePropsMD($r, $props, $options); // Parse methods $this->output .= $this->sectionHeader("Methods"); $this->generateMethodMD($methods, $options); }
protected function findNamespace() { $container = $this->getHelper('container'); $config = $this->config; if (isset($config['namespace'])) { return $config['namespace']; } else { $mapper = $container->getByType('LeanMapper\\IMapper'); $reflection = new ClassType($mapper); try { $properties = $reflection->getDefaultProperties(); if (isset($properties['defaultEntityNamespace'])) { return $properties['defaultEntityNamespace']; } } catch (\ReflectionException $ex) { } } throw new SchemaException('Entity namespace not set, use config.namespace to set proper namespace.'); }