How to get `globals()` inside Go bounded method?
- Lenguaje dominante
- Go
- Estrellas
- 1k
- Forks
- 105
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
## Simple description
I cannot find a way to access `globals()` within a bounded method in GoLang.
I expose a type into module, like `moduleImpl.Globals["Foo"] = FooType`, and add methods to FooType by `FooType.Globals["bar"] = MustNewMethod(..., someGoMethod, ...)`.
I cannot access module's global variables inside `someGoMethod`.
## Why I need this feature
I just attach different `zap.Logger` to multiple `py.Context`s. I attach `logger` as a module's global variable, by using
```
ctx.GetModule("name").Globals["logger"] = &pyLoggerObject{logger}
```
but I cannot find a way to use this logger inside bounded methods.
---
I found I can create a py.Type and attach the type to module global dynamically. I can somehow read module globals by this trick. But Is there a elegant way to archive that?
```
m = ctx.GetModule("module")
m.Globals["Foo"] = NewFooType(m)
```
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Evaluación
Este issue todavía no se ha evaluado.