diff options
Diffstat (limited to 'test/???.md')
-rw-r--r-- | test/???.md | 94 |
1 files changed, 0 insertions, 94 deletions
diff --git a/test/???.md b/test/???.md deleted file mode 100644 index 46a4b58a..00000000 --- a/test/???.md +++ /dev/null @@ -1,94 +0,0 @@ -# 如何搜索引用 - -```lua -local x = 1 -print(x) -- 通过语法搜索到 local x -``` - -```lua -local function f() -end - -local x = f -print(x) -- 通过 x 的赋值搜索到函数 -``` - -```lua -X.Y.Z = 1 -print(X.Y.Z) -- 通过 field 的赋值行为搜索 -``` - -```lua -local function f() - return f -end - -local x = f() -print(x) -- 引用不穿透函数调用? -``` - -```lua -local t = { - x = 1 -} - -print(t.x) -- 引用穿透表 -``` - -```lua -local function f() - return { - x = 1 - } -end - -local t = f() -print(t.x) -- 是否穿透函数返回的表? -``` - -在栈帧上标记值? - -```lua -X.Y.Z = 1 -local t = X.Y -print(t.Z) -``` - -字符串匹配? -1. t -> Z -2. X.Y -> Z -3. X.Y.Z = 1 - -语义匹配? -1. t -> Z -2. X.Y -> Z -3. X -> Y -> Z -4. X.Y.Z = 1 - -建立标记? -```lua -{ - type = 'set', - key = { - 's|X', - 's|Y', - 's|Z', - } - v = 1, -}, -{ - type = 'local', - key = 't', - v = { - 's|X', - 's|Y', - }, -}, -{ - type = 'get', - key = { - 'l|t', - 's|Z', - } -} -``` |