Занялся дслем для миграций.
// код миграции
CreateTable("Test", t => {
t.Integer("Id");
// контроль доппараметров тоже хочется сделать, для каждого типа свой набор
// может быть именованные параметры? можно ли их опускать?
t.String("Val", new (length = 10, default = "Str"));
});
// некоторый сахар который уже работает, студия дает автокомплишен для методов
create Test t => {
t.Integer("Id");
t.String("Val", new (length = 10, default = "Str"));
};
// хочется
create Test
{
Id : int;
Val(length = 10) : string = "Str";
};
Можно ли указать, область применимости макры? например только в методах Up, Down классов наследников MigrationBase?
Получится ли включить поддержку студии для варианта "хочется"? Если нет, как лучше задизайнить? Ну и вообще любые варианты приветствуются.