diff options
author | Felix Lange <fjl@twurst.com> | 2016-04-13 19:05:29 +0800 |
---|---|---|
committer | Felix Lange <fjl@twurst.com> | 2016-04-13 19:05:29 +0800 |
commit | e50e3bea495d96de9e67d4e9ab6fd9a9de7ba551 (patch) | |
tree | 37f57b694f59b2de2541e69a96ae80edfaa4e263 /jsre/completion.go | |
parent | b34b130fb5f8de8bc875c4ddadff044a41c074b4 (diff) | |
parent | bea56d84e53c255febaad5cb26d30122d87d02d9 (diff) | |
download | dexon-e50e3bea495d96de9e67d4e9ab6fd9a9de7ba551.tar dexon-e50e3bea495d96de9e67d4e9ab6fd9a9de7ba551.tar.gz dexon-e50e3bea495d96de9e67d4e9ab6fd9a9de7ba551.tar.bz2 dexon-e50e3bea495d96de9e67d4e9ab6fd9a9de7ba551.tar.lz dexon-e50e3bea495d96de9e67d4e9ab6fd9a9de7ba551.tar.xz dexon-e50e3bea495d96de9e67d4e9ab6fd9a9de7ba551.tar.zst dexon-e50e3bea495d96de9e67d4e9ab6fd9a9de7ba551.zip |
Merge pull request #2235 from fjl/chaindb-api-and-console-fixes
eth: add chaindbProperty to debug API (+ console fixes)
Diffstat (limited to 'jsre/completion.go')
-rw-r--r-- | jsre/completion.go | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/jsre/completion.go b/jsre/completion.go index e84a5b75c..7f94dabfc 100644 --- a/jsre/completion.go +++ b/jsre/completion.go @@ -27,7 +27,9 @@ import ( // evaluated, callers need to make sure that evaluating line does not have side effects. func (jsre *JSRE) CompleteKeywords(line string) []string { var results []string - jsre.do(func(vm *otto.Otto) { results = getCompletions(vm, line) }) + jsre.Do(func(vm *otto.Otto) { + results = getCompletions(vm, line) + }) return results } @@ -53,9 +55,18 @@ func getCompletions(vm *otto.Otto, line string) (results []string) { } } }) - // e.g. web3<tab><tab> append dot since its an object - if obj, _ = vm.Object(line); obj != nil { - results = append(results, line+".") + + // Append opening parenthesis (for functions) or dot (for objects) + // if the line itself is the only completion. + if len(results) == 1 && results[0] == line { + obj, _ := vm.Object(line) + if obj != nil { + if obj.Class() == "Function" { + results[0] += "(" + } else { + results[0] += "." + } + } } sort.Strings(results) |