-
Notifications
You must be signed in to change notification settings - Fork 9
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
Продумать взаимодействие с host-стороной #3
Comments
Поскольку мы так или иначе будем хранить внутри интерпретатора список импортированных типов, нет проблемы добавить туда ещё один объект. С лямбдами будет чуть интереснее - поскольку конвенция вызова функций lens и внешних объектов может отличаться, то, возможно, нам придётся эмитить или генерировать специальные врапперы над внешними функциями, переданными нам в рантайме. |
Типы - окей. Будем хранить |
Для Жаль, что в дотнете нельзя иметь список типов-параметров, как в C++ в конструкции |
Реквестирую utility-функцию (набор функций), переводящий
|
Вообще-то это всё уже сделано до нас и называется [ Там есть всё необходимое: Мне не кажется, что вообще есть необходимость перегонять эти данные в некую нашу структуру. От пользователя требуется только преобразовать его лямбду к делегату, если у него именно лямбда. То есть всякие |
Окей, хорошо, так даже лучше. |
Начал запиливать потихоньку в ветке |
Типы, методы, свойства импортируются. Можно закрывать. |
Скрипт должен иметь возможность взаимодействовать с вызывающей его стороной. Для этого интерпретатору перед исполнением должны скармливаться типы и методы, которыми скрипт сможет манипулировать.
Необходимо продумать то, как сгенерированная с помощью Reflection.Emit сборка сможет получать к ним доступ.
Хотелось бы, например, сделать вот так:
The text was updated successfully, but these errors were encountered: