Пакет Cedet объединяет в своем составе несколько пакетов, реализующих различную функциональность, но объединенных вокруг одной задачи по работе с исходным кодом на различных языках программирования.
- Semantic — является основой для построения анализаторов для различных языков программирования, позволяя использовать общее представление извлеченной информации для разных языков, используя которую реализуется остальной функционал не только Cedet, но и других пакетов — JDEE и ECB, которые являются попыткой создать среды разработки, близкие по виду к имеющимся на рынке (Eclipse, NetBeans и т.п.);
- SemanticDB — входит в состав Semantic, и реализует интерфейсы к разным модулям хранения информации, используемой при дополнении имен, навигации по коду и т.п. Синтаксическая информация может сохраняться между сессиями работы в Emacs, что уменьшает потребность в регулярном разборе одного и того же кода;
- Senator — реализует функциональность для навигации по синтаксической информации, извлеченной Semantic;
- Srecode — библиотека для генерации кода основываясь на существующей синтаксической информации, в том числе и полученной в результате работы Semantic;
- EDE — реализует набор расширений, которые позволяют работать с проектами — управлять списком целей для сборки, выполнять сборку проекта и т.п. Кроме того, используя концепцию проекта, существует возможность более точного использования Semantic для дополнения имен и другой функциональности; Speedbar — используется для отображения информации о текущем буфере, основываясь на данных из различных источниках — Semantic, специализированные провайдеры информации (например, для texinfo & html) и т.п.
- Eieio — реализация CLOS-like (Common Lisp Object System) инфраструктуры для Emacs Lisp;
- Cogre — библиотека для отрисовки UML-подобных диаграм в буфере Emacs с базовой интеграцией с Semantic.
|