Ilya
Ну так я про сваггер для жирафа, а не фейбла.
Ilya
Правда в жирафе тоже где-то что-то было, но в другой репе.
Ayrat
Я сейчас собираюсь заняться свагером для жирафа
Ayrat
По работе
Ayrat
Так что велики шансы что сделаю
Romɑn
Ayrat
Есть короче такая хуйня, она даже с жирафом должна взлететь
https://github.com/Microsoft/OpenAPI.NET.CSharpAnnotations
Ayrat
ебашим хмл коменты над своими хендлерами
/// <summary>
/// Sample Get 1
/// </summary>
/// <group>Sample V1</group>
/// <verb>GET</verb>
/// <url>http://localhost:9000/V1/samples/{id}?queryBool={queryBool}</url>
/// <param name="sampleHeaderParam1" cref="float" in="header">Header param 1</param>
/// <param name="id" cref="string" in="path">The object id</param>
/// <param name="queryBool" required="true" cref="bool" in="query">Sample query boolean</param>
/// <response code="200"><see cref="SampleObject1"/>Sample object retrieved</response>
/// <returns>The sample object 1</returns>
Ayrat
и далее либа их собирает из сборки и генерит вам сваггер
Ayrat
Но это не наш метод
Ayrat
потому что тут дублирование инфы
Ayrat
Короче, на этой неделе попробую склетон собрать
Romɑn
Всмысле с кодом бы помог
Romɑn
Насколько в моих силушках
Ayrat
Ayrat
Идея ахонь
Shub
потому что тут дублирование инфы
тебе необязательно все описывать в док-строках. в док-строки можно положить человекочитаемые данные, остальное оно рефлексией по параметрам определить
Ilya
Ayrat
Ayrat
Поэтому там придется все писать
Vladimir
Ayrat
Как их композить?..
Vladimir
сделать чтобы удобно было свагер впилить) у меня уже на razor свой форк есть
Ayrat
Я вижу такой способ. Ты пишешь и поддерживаешь опен апи спеку сам, полностью.
На билде из этой спеки генериться скелет жираф кода, обмазанный интерфейсами, которые ты должен будешь имплементировать в своём коде и связать через DI
Ayrat
И как бы все. Парсер опен апи я нашёл. Кодген фшарпа в Фантомасе.
Нужно реализовать промежуточную задачу построения АСТ фшарпа по опен апи.
И вторая задача - мсбилд таска на код ген (спиздить из myriad)
Vladimir
а не думал про intpreter? в теории типа написать программу которая будет интерпретироваться отдельно asp.net -ом, а отдельно движком который сгенерит сваггер. Может конечно я бред говорю)
Shub
Ayrat
Да зачем? Сваггер надо в компайл тайме создавать
Shub
swashbuckle может генерить спеку даже из одного xml doc
Ayrat
Свашбакля по атрибутам и рефлексии делает
Ayrat
В жирафе это нерешаемо
Shub
в жирафе не может, что ли?
Ayrat
Как???
Ayrat
Ты там атрибуты ставишь?
Shub
откуда я знаю? это вы там смотрители зоопарков, вы с жирафами и разбирайтесь
Ayrat
Или у тебя хендлеры раскиданы по классам с общим передком ApiController?
Ayrat
Hog
Vladimir
мб динамически даже проще будет) через рефлексию даже насобирать все
Ayrat
Точнее спека вообще будет пользователем генериться, а вот жираф сгенерить
Ayrat
Диёр
Shub
Диёр
Там всё сразу будет
Ayrat
Choose [
FuckYouHandler
GET >=> wtfHandler >=> route "..."
]
Где wtfHandler вызывает сам себя
Ayrat
И раут определен в недрах FuckYouHandler, с условием
Ayrat
И ебись с рефлексией)
Vladimir
Ты серьезно?)
ну я так, накидываю идей) да, похоже нн выйдет
Диёр
Но... Ведь... Графкуль...
Ayrat
Я уверен моя идея рабочая. Все есть, осталось закодить
Vasiliy
https://dtf.ru/life/116388-uchitel-iz-san-diego-provel-urok-po-geometrii-v-half-life-alyx
Vasiliy
Vasiliy
коменты топчик. Сорри, что ворвался внезапно)
Анна
Vasiliy
ахахахаха, а ты в теме)
Анна
Ну про лего жиза ведь
Vasiliy
угу. На работе все время кто то из коллег рассказывает какой классный набор лего он купил ребенку
Vasiliy
И потом они вместе собирали :D
Hog
так хочу майндшторм но 600 за полный комплект жаба душит
Vasiliy
найди детей?
Hog
уж внуки если только 😂😂😂
Vasiliy
ЕЩЕ ЛУЧШЕ
Vasiliy
правда, придется ждать когда внуки вырастут из Лего Дупло
Hog
поэтому - был? а не есть
Hog
сейчас такое время блин не до конструкторов
Анна
Товарищ с работы купил себе Сокол тысячелетия за 800 что ли баксов
Hog
Анна
Hog