From c1c365c1ca4881488c4fc419b4d5e579b89ef2ed Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Sun, 4 Dec 2022 20:13:24 +0000 Subject: patch 9.0.1001: classes are not documented or implemented yet Problem: Classes are not documented or implemented yet. Solution: Make the first steps at documenting Vim9 objects, classes and interfaces. Make initial choices for the syntax. Add a skeleton implementation. Add "public" and "this" in the command table. --- src/ex_cmds.h | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) (limited to 'src/ex_cmds.h') diff --git a/src/ex_cmds.h b/src/ex_cmds.h index ed954efc0d..c6f85ce104 100644 --- a/src/ex_cmds.h +++ b/src/ex_cmds.h @@ -126,7 +126,7 @@ EXCMD(CMD_abclear, "abclear", ex_abclear, EXCMD(CMD_aboveleft, "aboveleft", ex_wrongmodifier, EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM, ADDR_NONE), -EXCMD(CMD_abstract, "abstract", ex_ni, +EXCMD(CMD_abstract, "abstract", ex_class, EX_EXTRA|EX_TRLBAR|EX_CMDWIN|EX_LOCK_OK, ADDR_NONE), EXCMD(CMD_all, "all", ex_all, @@ -354,7 +354,7 @@ EXCMD(CMD_clist, "clist", qf_list, EXCMD(CMD_clast, "clast", ex_cc, EX_RANGE|EX_COUNT|EX_TRLBAR|EX_BANG, ADDR_UNSIGNED), -EXCMD(CMD_class, "class", ex_ni, +EXCMD(CMD_class, "class", ex_class, EX_EXTRA|EX_TRLBAR|EX_CMDWIN|EX_LOCK_OK|EX_EXPORT, ADDR_NONE), EXCMD(CMD_close, "close", ex_close, @@ -567,16 +567,16 @@ EXCMD(CMD_emenu, "emenu", ex_emenu, EXCMD(CMD_endif, "endif", ex_endif, EX_TRLBAR|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK|EX_WHOLE, ADDR_NONE), -EXCMD(CMD_endinterface, "endinterface", ex_ni, +EXCMD(CMD_endinterface, "endinterface", ex_wrongmodifier, EX_EXTRA|EX_TRLBAR|EX_CMDWIN|EX_LOCK_OK, ADDR_NONE), -EXCMD(CMD_endclass, "endclass", ex_ni, +EXCMD(CMD_endclass, "endclass", ex_wrongmodifier, EX_EXTRA|EX_TRLBAR|EX_CMDWIN|EX_LOCK_OK, ADDR_NONE), EXCMD(CMD_enddef, "enddef", ex_endfunction, EX_TRLBAR|EX_CMDWIN|EX_LOCK_OK|EX_WHOLE, ADDR_NONE), -EXCMD(CMD_endenum, "endenum", ex_ni, +EXCMD(CMD_endenum, "endenum", ex_wrongmodifier, EX_EXTRA|EX_TRLBAR|EX_CMDWIN|EX_LOCK_OK, ADDR_NONE), EXCMD(CMD_endfunction, "endfunction", ex_endfunction, @@ -594,7 +594,7 @@ EXCMD(CMD_endwhile, "endwhile", ex_endwhile, EXCMD(CMD_enew, "enew", ex_edit, EX_BANG|EX_TRLBAR, ADDR_NONE), -EXCMD(CMD_enum, "enum", ex_ni, +EXCMD(CMD_enum, "enum", ex_enum, EX_EXTRA|EX_TRLBAR|EX_CMDWIN|EX_LOCK_OK|EX_EXPORT, ADDR_NONE), EXCMD(CMD_eval, "eval", ex_eval, @@ -756,7 +756,7 @@ EXCMD(CMD_inoremenu, "inoremenu", ex_menu, EXCMD(CMD_intro, "intro", ex_intro, EX_TRLBAR|EX_CMDWIN|EX_LOCK_OK, ADDR_NONE), -EXCMD(CMD_interface, "interface", ex_ni, +EXCMD(CMD_interface, "interface", ex_interface, EX_EXTRA|EX_TRLBAR|EX_CMDWIN|EX_LOCK_OK, ADDR_NONE), EXCMD(CMD_isearch, "isearch", ex_findpat, @@ -1215,6 +1215,9 @@ EXCMD(CMD_ptselect, "ptselect", ex_ptag, EXCMD(CMD_put, "put", ex_put, EX_RANGE|EX_WHOLEFOLD|EX_BANG|EX_REGSTR|EX_TRLBAR|EX_ZEROR|EX_CMDWIN|EX_LOCK_OK|EX_MODIFY, ADDR_LINES), +EXCMD(CMD_public, "public", ex_wrongmodifier, + EX_EXTRA|EX_TRLBAR|EX_CMDWIN|EX_LOCK_OK, + ADDR_NONE), EXCMD(CMD_pwd, "pwd", ex_pwd, EX_TRLBAR|EX_CMDWIN|EX_LOCK_OK, ADDR_NONE), @@ -1488,7 +1491,7 @@ EXCMD(CMD_startgreplace, "startgreplace", ex_startinsert, EXCMD(CMD_startreplace, "startreplace", ex_startinsert, EX_BANG|EX_TRLBAR|EX_CMDWIN|EX_LOCK_OK, ADDR_NONE), -EXCMD(CMD_static, "static", ex_ni, +EXCMD(CMD_static, "static", ex_wrongmodifier, EX_EXTRA|EX_TRLBAR|EX_CMDWIN|EX_LOCK_OK, ADDR_NONE), EXCMD(CMD_stopinsert, "stopinsert", ex_stopinsert, @@ -1614,6 +1617,9 @@ EXCMD(CMD_tfirst, "tfirst", ex_tag, EXCMD(CMD_throw, "throw", ex_throw, EX_EXTRA|EX_NEEDARG|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK|EX_WHOLE, ADDR_NONE), +EXCMD(CMD_this, "this", ex_wrongmodifier, + EX_EXTRA|EX_NEEDARG|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK|EX_WHOLE, + ADDR_NONE), EXCMD(CMD_tjump, "tjump", ex_tag, EX_BANG|EX_TRLBAR|EX_WORD1, ADDR_NONE), @@ -1665,7 +1671,7 @@ EXCMD(CMD_tunmenu, "tunmenu", ex_menu, EXCMD(CMD_tunmap, "tunmap", ex_unmap, EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_CTRLV|EX_CMDWIN|EX_LOCK_OK, ADDR_NONE), -EXCMD(CMD_type, "type", ex_ni, +EXCMD(CMD_type, "type", ex_type, EX_EXTRA|EX_TRLBAR|EX_CMDWIN|EX_LOCK_OK|EX_EXPORT, ADDR_NONE), EXCMD(CMD_undo, "undo", ex_undo, -- cgit v1.2.3