return $directory.\DIRECTORY_SEPARATOR.
$class->
getFilename();
} private function writeClasses(): void
{ foreach ($this->classes
as $class) { $this->
buildConstructor($class);
$this->
buildToArray($class);
if ($class->
getProperties()) { $class->
addProperty('_usedProperties', null, '[]'
);
} $this->
buildSetExtraKey($class);
file_put_contents($this->
getFullPath($class),
$class->
build());
} $this->classes =
[];
} private function buildNode(NodeInterface
$node, ClassBuilder
$class, string
$namespace): void
{ if (!
$node instanceof ArrayNode
) { throw new \
LogicException('The node was expected to be an ArrayNode. This Configuration includes an edge case not supported yet.'
);
}