Exemplo n.º 1
0
 function visitComplexTypeNode(PiBX_ParseTree_Tree $tree)
 {
     $this->plowTypesForLevel($tree->getLevel());
     $logMessage = $tree->getLevel() . str_pad("  ", $tree->getLevel()) . " ";
     $logMessage .= "complex";
     if ($tree->getLevel() == 0) {
         $logMessage .= " - global";
         $t = new PiBX_AST_Type($tree->getName());
         if ($this->countTypes() == 0) {
             // the first type is the XSD-root.
             $t->setAsRoot();
             $t->setTargetNamespace($tree->getParent()->getTargetNamespace());
             $t->setNamespaces($tree->getNamespaces());
         }
         $sf = new PiBX_CodeGen_ASTStackFrame($tree->getLevel(), $t);
         array_push($this->stack, $sf);
         $this->typeUsage->addType($tree->getName());
     }
     $this->log($logMessage);
 }