goplus / gop

The Go+ programming language is designed for engineering, STEM education, and data science. Our vision is to enable everyone to become a builder of the digital world.
https://goplus.org
Apache License 2.0
8.96k stars 547 forks source link

通过反射取得符号的godoc #71

Closed xushiwei closed 8 years ago

xushiwei commented 8 years ago

基本思路是通过符号值的go类型,取得对应的godoc,提供给 qlang shell 或者未来的 qlang ide。

visualfc commented 8 years ago

使用qlang导入的Go包缺少元数据,使用包导入后无法获取包的原始导入包名称。 比如 qlang.Import("sys", syscall.Exports),导入后sys只是一个map,没有原始go原始包syscall的名称信息存在,Go语言在包这一层面元数据缺失,qlang应该支持以便于获取元数据,基本上只需要一个原始pkg id - syscall 即可。

type(sys)
> map[string]interface {}
xushiwei commented 8 years ago
$ qlang
Q-language - http://qlang.io, version qlang-develop darwin/amd64
Copyright (C) 2015 Qiniu.com - Shanghai Qiniu Information Technologies Co., Ltd.

qlang> ioutil._name
=> io/ioutil