Можно ли создать экземпляр DartType?
Я работаю над библиотекой генерации кода на основе дротика build
пакет. В различных частях API я хотел бы, чтобы пользователь ввелtype
параметр, который должен иметь тип DartType
, или, возможно, типа Type
а потом каким-то образом преобразовали в DartType
.
Так например:
SomeClass(
name: 'address',
type: String
)
В этом примере String - это тип. Но, как я уже сказал, это должно бытьDartType
.
Мне кажется, что - с точки зрения build
пользователь пакета - DartTypes
доступны только через Element
классы (LibraryElement
быть на вершине Element
class в этом случае), которые, в свою очередь, доступны через BuildStep
пример нам дан в build(BuildStep buildstep)
метод, но как и где эти DartTypes
создан для начала?
Я начал копаться в analyzer
пакет, чтобы узнать, но он слишком запутан для меня, поэтому я подумал, что просто спрошу: есть ли способ создать экземпляр DartType
(Желательно ParameterizedType
чтобы включить ссылку на его общие подтипы)?