public function getInterface(InterfaceDefinition $definition, array $args = []) {
        $abstract = $definition->getValue();
        $interface = $definition->getId();
        $instance = $this->resolveAbstract($abstract, $args);
        $this->matchClassType($interface, $instance);

        return $instance;
    }
public function getInterface(InterfaceDefinition $definition, array $args = []) {
        $abstract = $definition->getValue();
        $interface = $definition->getId();
        $instance = $this->resolveAbstract($abstract, $args);
        $this->matchClassType($interface, $instance);

        return $instance;
    }
@param InterfaceDefinition $definition
@param array $args

@return mixed
@throws TypeMismatchException