@@ -13,9 +13,9 @@ local Boolean = require("nattlua.types.union").Boolean
1313local table = _G .table
1414local type_errors = require (" nattlua.types.error_messages" )
1515
16- local function lookup_value (self , node )
16+ local function lookup_value (self , ident )
1717 local errors = {}
18- local key = ConstString (node . value . value )
18+ local key = ConstString (ident )
1919 local obj , err = self :GetLocalOrGlobalValue (key )
2020
2121 if self :IsTypesystem () then
@@ -72,6 +72,7 @@ local function is_primitive(val)
7272end
7373
7474return {
75+ LookupValue = lookup_value ,
7576 AnalyzeAtomicValue = function (self , node )
7677 local value = node .value .value
7778 local type = runtime_syntax :GetTokenType (node .value )
@@ -85,9 +86,9 @@ return {
8586 return False ()
8687 end
8788 elseif node .force_upvalue then
88- return lookup_value (self , node )
89+ return lookup_value (self , node . value . value )
8990 elseif value == " ..." then
90- return lookup_value (self , node )
91+ return lookup_value (self , node . value . value )
9192 elseif type == " letter" and node .standalone_letter then
9293 -- standalone_letter means it's the first part of something, either >true<, >foo<.bar, >foo<()
9394 if self :IsTypesystem () then
@@ -120,7 +121,7 @@ return {
120121 end
121122 end
122123
123- return lookup_value (self , node )
124+ return lookup_value (self , node . value . value )
124125 elseif type == " number" then
125126 local num = LNumberFromString (value )
126127
0 commit comments