@OPTIONS partial + dynamic = почему-то надеялся что получу изоляцию набора методов в контексте экземпляров, но наступил на грабли или как деструктировать методы класса?
andylars 19.06.2016 11:00
/ 19.06.2016 13:09
Догружаю методы класса из файлов (модулей), делая это по "ходу пьесы" из контекста объекта класса.
Почему-то решилось, что в сочетании @OPTIONS partial + dynamic = для двух разных объектов (экземпляров класса) - методы будут подгружаться в изолированном контексте, а это не так - они подгружается/перекрываются статически на весь класс.
Чуть не отстрелил себе ногу, беззаботно взяв на вооружение такое сочетание, но вовремя обнаружил что "подмешаные"(?) - загруженные новые методы "внутри одного объекта", тут же появляются и в другом экземпляре, в том числе перетирая поверх одноименные.
В моем случае, модули (файлы с методами) не используются самостоятельно. То есть предполагают только "сборку" конкретного класса в контексте объекта, но вот эти сборки должны быть изолированы по набору этих методов.
В моей задаче меня в принципе бы устроило и статическое применение класса, т.к. экземпляры я не использую одновременно, а в лучшем случае последовательно, но тогда мне нужна деструкция методов до первоначального состояния класса (его первого упоминания/объявления до всяких ^use[]).
Вопрос:Есть много разных мыслей, требующих множества проверок практикой.
Может кто-то подскажет прямой рабочий подход? Очевидно, что ^process в его штатном применении мне тоже не может, он делает ровно то же.
P.S.: В общем случае, я так понимаю задача где-то на пересечении ключевых слов "множественное наследование" и "миксины" - но пока я в этом не разобрался.
- @OPTIONS partial + dynamic = почему-то надеялся что получу изоляцию набора методов в контексте экземпляров, но наступил на грабли или как деструктировать методы класса?, andylars 19.06.2016 11:00 / 19.06.2016 13:09