Реализация ненулевой аннотации - PullRequest
0 голосов
/ 30 сентября 2019

Я думал, что углубился в более старые функции Java, такие как аннотации. Я столкнулся с аннотациями типов Java 8s, которые позволяют нам расширять систему типов Javas. Самая распространенная аннотация «NonNull» или «NotNull» от IntelliJ's Annotation Libary или Checkerframework до сих пор остается для меня загадкой. В Документах я могу найти только объявление интерфейса, но не то, как реализован процессор аннотаций. Мне нравится писать свои собственные аннотации, которые проверяют определенные типы во время компиляции, но я не знаю, с чего начать.

Кто-нибудь знает, как 'NonNull' или 'NotNull' обычнореализован в процессоре аннотаций? . Или укажите мне ресурс или документацию, которая отвечает на мой вопрос?

Ваша помощь очень ценится.

1 Ответ

1 голос
/ 30 сентября 2019

Вы упомянули IntelliJ IDEA и Checker Framework. Исходный код IDEA и исходный код Checker Framework доступны для чтения и изучения. Руководство по Checker Framework объясняет , как создать новый контролер и ссылки на публикации , которые объясняют больше теории.

...