Guarding
Описание
Guarding — это инструмент для защиты кода и архитектуры, основанный на многоуровневом подходе. Он использует git-хуки и DSL для создания правил защиты дизайна.
Использование
cargo install guarding
guarding.guarding
:package(".")::file.len should < 200;
package(".")::file.len should > 50;
guarding .
Разработка
Процесс разработки включает в себя следующие шаги:
Логика захвата DSL включает:
Примеры запросов можно найти по ссылке: https://github.com/nvim-treesitter/nvim-treesitter/tree/master/queries.
Для Java и JavaScript:
# 类::名 包含 "Controller";
# 中文分词:("..myapp..") 类名称中包含 "Controller"
class("..myapp..")::function.name should contains("Model");
# or
class("..myapp..")::function.name contains("");
Для Rust и Golang:
struct("..myapp..")::function.name should contains("Model");
# or
struct("..myapp..")::function.name contains("");
Задачи
В разработке находятся следующие функции:
Лицензия
Этот код распространяется под лицензией MIT. См. файл LICENSE в этом каталоге.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )