public function addTrait($trait)
    {
        if ($this->isTraitDefined($trait) === false) {
            throw Exception\Type::isNotDefined($trait);
        }

        $trait = new Element\ClassTrait($this, $trait);
        $this->classTraits->append($trait);

        return $trait;
    }