-
Notifications
You must be signed in to change notification settings - Fork 178
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Macros #3
Comments
в имеющемся коде уже были использованы маски поэтому я и использовал union, чтобы остальные файлы не трогать |
По поводу SET_PROP_FUNC. Я думаю есть резон подправить парсер чтобы устанавливаемая этим макросом функция работала как setter, и как getter. А является ли property read-only или нет можно определять кодом функции. И не надо будет ничего парсером отслеживать. |
SGTM (sounds good to me). Если есть желание парсер поменять - welcome, желательно отдельным PR. |
Я реализовал функционал setter/getter. |
TRACE_OBJ, MKOBJ, SET_RO_PROP_V, SET_RO_PROP2, SET_RO_PROP, SET_PROP_FUNC, SET_METHOD
По этим макросам я написал комментарии в
internal.h
.По поводу properties: read-only property я реализовал как функцию которую можно установить макросом
SET_PROP_FUNC
. Но честно говоря мне не очень нравится этот подход. Такую функцию нельзя использовать как setter, а только как getter. Можно подправить парсер и при присваивании проверять, не присваивается ли значение атрибуту которое на самом деле такая property function, и если да, вызвать функцию с аргументами. Но можно придумать и какой-то другой вариант. Например, в каждом объекте тупо добавлять такие атрибуты - но потом за ними придется следить (например строка меняется - нужно изменить атрибутlength
и тп).Про флаги: да, мне кажется битовые поля удобнее флагов.
Только зачем их заворачивать в
union
? Не проще простоThe text was updated successfully, but these errors were encountered: