completion_env

Autocomplete helper: determine context of the token to be autocompleted

Adapted from the stata_kernel version (omitting mata-specific stuff).

Note the corner cases discussed here, but the commented out test cases below are not yet handled:


source

CompletionEnv

 CompletionEnv ()

source

Env

 Env (value, names=None, module=None, qualname=None, type=None, start=1)

An enumeration.


source

CompletionEnv.get_env

 CompletionEnv.get_env (code:str, r2chars:str, sc_delimiter)

Returns completions environment

Type Details
code str Right-truncated to cursor position
r2chars str The two characters immediately after code, used to accurately determine rcomp
sc_delimiter
Returns typing.Tuple[main.Env, int, str, str]
test_eq(
    test_instance.get_env("`", "", None)[0:3],
    (Env.LOCAL, 1, ""))
test_eq(
    test_instance.get_env("*%b", "", None)[0:2],
    (Env.MAGIC, 1))
test_eq(
    test_instance.get_env("gen time_tc = clock(datea", "", None)[0:2],
    (Env.GENERAL, 20))
test_eq(
    test_instance.get_env("list var1-v", "", None)[0:2],
    (Env.GENERAL, 10))