public function createFormForObject(string $formclass)
    { 
        if (!is_a($formclass, BaseForm::class, true))
            throw new \InvalidArgumentException("Not a valid BaseForm class provided");

        $form = new Form($formclass);
        $refl = new \ReflectionClass($formclass);

        $field_validators = $formclass::listFieldValidators();
        $fields = $this->getAnnotatedFields($refl, $field_validators);
        foreach ($fields as $name => $field)
            $form->add($field);

        $this->addFormValidators($refl, [$formclass, 'listFormValidators'](), $form);
        return $form;
    }