Tab-completion in REPL based on module variables.
This commit is contained in:
@@ -0,0 +1,17 @@
|
||||
import "meta" for Meta
|
||||
|
||||
var variables = Meta.getModuleVariables("main")
|
||||
|
||||
// Includes implicitly imported core stuff.
|
||||
System.print(variables.contains("Object")) // expect: true
|
||||
System.print(variables.contains("Bool")) // expect: true
|
||||
|
||||
// Includes top level variables.
|
||||
System.print(variables.contains("variables")) // expect: true
|
||||
|
||||
// Even ones declared later.
|
||||
System.print(variables.contains("later")) // expect: true
|
||||
|
||||
var later = "values"
|
||||
|
||||
System.print(variables.contains("unknown")) // expect: false
|
||||
@@ -0,0 +1,3 @@
|
||||
import "meta" for Meta
|
||||
|
||||
Meta.getModuleVariables(123) // expect runtime error: Module name must be a string.
|
||||
@@ -0,0 +1,3 @@
|
||||
import "meta" for Meta
|
||||
|
||||
Meta.getModuleVariables("unknown") // expect runtime error: Could not find a module named 'unknown'.
|
||||
Reference in New Issue
Block a user