Описание тега class-decorator

0 ответов

Как отменить декораторы класса в конструкторе

Давайте рассмотрим следующий пример декораторов классов (источник http://www.informit.com/articles/article.aspx?p=1309289&seqNum;=4): class GenericDescriptor: def __init__(self, getter, setter): self.getter = getter self.setter = setter def __get__(…
2 ответа

Доступ к статическим полям из декорированного класса

Пример полного кода: def decorator(class_): class Wrapper: def __init__(self, *args, **kwargs): self.instance = class_(*args, **kwargs) @classmethod def __getattr__(cls, attr): return getattr(class_, attr) return Wrapper @decorator class ClassTest: …
19 дек '17 в 16:56
1 ответ

Декоратор класса Python "self" кажется неправильным

Я пытаюсь понять, как я могу изменить функциональность __setattr__ класса с использованием декоратора в классе, но я сталкиваюсь с проблемой при попытке доступа self внутри функции, которая заменяет __setattr__, Если я изменю проблемную строку, чтоб…
16 май '18 в 06:51
2 ответа

Документация Typescript для Class Decorator - функция, возвращающая "class extends constructor {}"

Итак, я пытаюсь понять, что такое декораторы Typescript, и застрял на примере, приведенном для декораторов классов. В приведенном примере показано, как создать декоратор класса с помощью функции (){}. function classDecorator<T extends {new(...arg…
2 ответа

Метод подкласса Python для наследования декоратора от метода суперкласса

У меня есть суперкласс, у которого есть метод retrieve(), и каждый из его подклассов реализует свой собственный метод retrieve(). Я хотел бы, чтобы каждый метод retrieve() был оформлен для кэширования возвращаемого значения, когда он получает одинак…
2 ответа

Передача параметра self при декорировании методов в Python

Я хочу создать декоратор, который показывает, какие параметры были переданы функции и методам. Я уже написал код для функций, но методы вызывают у меня головную боль. Это декоратор функций, который работает по назначению: from functools import updat…
1 ответ

Реализация декоратора JS для обертывания класса

Я пытаюсь обернуть конструктор класса и ввести некоторую логику с помощью декоратора класса. Все работало нормально, пока я не попытался расширить обернутый класс: у расширенного класса нет методов в прототипе. function logClass(Class) { // save a r…
02 авг '20 в 14:27
0 ответов

Настройте кодогенерацию JiBX, чтобы расширить сгенерированные классы несгенерированным базовым классом

Я уже создал классы java из XSD с помощью jibx и применил глобальную настройку, например prefer-inline="true" show-schema="false" import-docs="true" use-inner="true". Теперь я хочу расширить каждый сгенерирова…
2 ответа

Индексировать член класса как список в Python

Предположим, у меня есть простой класс вроде class Foo: def __init__(bar): self.x = transform1(bar) self.y = transform2(bar) Теперь меня интересует создание класса, в котором я могу передать итерацию для bar в инициализатор и верните экземпляр Foo г…
25 ноя '20 в 23:24
1 ответ

Декоратор Vuex MutationAction не может быть назначен TypedPropertyDescriptor

Я новичок в Typescript и заранее извиняюсь, если это проблема для новичков. Я не знаю, как исправить эту ошибку TS: @Module({ namespaced: true, name: "Admin" }) class Admin extends VuexModule { public adminUserList: UserList = []; @MutationAction({ …
21 июн '21 в 20:42
0 ответов

декоратор класса нарушает наследование (python2.7)

Я получаю сообщение об ошибке, когда пытаюсь использовать декоратор класса для унаследованного метода class _MyDec(object): def __init__(self, func): self.func = func def __call__(self, *args, **kwargs): return self.func(self, *args, **kwargs) class…
2 ответа

Украшение класса правильными названиями

Я пытаюсь украсить класс def decorate_module(Module): class Wrapper(Module): def __init__(self, cfg): self.c = create_c(**cfg) super().__init__() return Wrapper Пока код работает, он дает класс с именем «Wrapper» вместо имени исходного модуля. Что к…
2 ответа

В чем разница между вызовом декоратора класса для экземпляра класса и для определения класса?

class Deco: def __init__(self, name): self.name = name def __call__(self, test_class): def inner_func(whatisit): return whatisit test_class.method = inner_func return test_class class TestClass: def __init__(self, name): self.name = name @Deco('dec…
09 дек '20 в 09:57
1 ответ

Декоратор классов, совместимый с Mypy

Скажем, у меня есть следующий простой пример без каких-либо подсказок: def wrapper(cls): class Subclass(cls): def subclass_method(self): pass return Subclass @wrapper class Parent: def parent_method(self): pass p = Parent() p.parent_method() p.subcl…
2 ответа

Декораторы классов для методов в классах

Как работают декораторы классов для методов в классах? Вот пример того, что я сделал с помощью некоторых экспериментов: from functools import wraps class PrintLog(object): def __call__(self, func): @wraps(func) def wrapped(*args): print('I am a log'…
1 ответ

Динамический декоратор для методов класса сопоставления регулярных выражений

Я хочу упростить оформление методов в таких ситуациях, как реализация класса делегата. Предположим, что сторонний «служебный» класс с десятками методов Вы хотите переопределить большое количество методов, чтобы иметь возможность их украсить Вы созда…
0 ответов

Функции Angular ClassDecorator не видны аннотированному классу

Я работаю с декоратором, который дополняет компоненты дополнительными функциями. export function I18n(): ClassDecorator { return function (constructor: any) { constructor.prototype.interpolate = function ( template: string, replacements: any ) { ret…
04 янв '22 в 17:09
0 ответов

Добавление декоратора класса прерывает импорт интерфейса для параметров конструктора.

Я пытался запустить https://github.com/inversify/InversifyJS на CRA, я пошел дальше и настроил его, но теперь столкнулся со следующей проблемой: import { AudioVideoFacade, BackgroundBlurProcessor, BackgroundBlurVideoFrameProcessor, DefaultVideoTrans…
1 ответ

Когда вызывается декоратор класса?

Я использую библиотеку stanza NLP, которая использует декоратор для регистрации процессоров. У Stanza есть страница справки для создания собственных процессоров здесь Они используют декоратор класса @register_processor("processor_name"). Код для reg…
07 май '22 в 09:04
0 ответов

Декоратор класса Typescript не работает так, как ожидается

У меня есть пример кода ниже: function BaseEntity(ctr: Function) { ctr.prototype.id = Math.random(); ctr.prototype.created = new Date(); } @BaseEntity class User { constructor(public name: string) {} } let user = new User("Sarah"); console.log(user.…
22 фев '23 в 21:04