boolangery / py-lua-parser

A Lua parser and AST builder written in Python.
MIT License
117 stars 36 forks source link

luaparser.utils.visitor.VisitorException: No visitor found for class <enum 'StringDelimiter'> #11

Closed RandyChihuahua closed 3 years ago

RandyChihuahua commented 3 years ago

Using the basic command:

from luaparser import ast

src = """ local function sayHello() print('hello world !') end sayHello() """

tree = ast.parse(src) print(ast.to_pretty_str(tree))

I get this: print(ast.to_pretty_str(tree)) File "~Python37\lib\site-packages\luaparser\ast.py", line 38, in to_pretty_str return printers.PythonStyleVisitor(indent).visit(root) File "~Python37\lib\site-packages\luaparser\utils\visitor.py", line 37, in _visitor_impl
return method(self, arg) File "~Python37\lib\site-packages\luaparser\printers.py", line 107, in visit res += self.visit(attrValue) File "~Python37\lib\site-packages\luaparser\utils\visitor.py", line 37, in _visitor_impl
return method(self, arg) File "~Python37\lib\site-packages\luaparser\printers.py", line 107, in visit res += self.visit(attrValue) File "~Python37\lib\site-packages\luaparser\utils\visitor.py", line 29, in _visitor_impl
return method(self, arg) File "~Python37\lib\site-packages\luaparser\printers.py", line 80, in visit res += self.indent_str(False) + self.visit(itemValue) File "~Python37\lib\site-packages\luaparser\utils\visitor.py", line 37, in _visitor_impl
return method(self, arg) File "~Python37\lib\site-packages\luaparser\printers.py", line 107, in visit res += self.visit(attrValue) File "~Python37\lib\site-packages\luaparser\utils\visitor.py", line 37, in _visitor_impl
return method(self, arg) File "~Python37\lib\site-packages\luaparser\printers.py", line 107, in visit res += self.visit(attrValue) File "~Python37\lib\site-packages\luaparser\utils\visitor.py", line 29, in _visitor_impl
return method(self, arg) File "~Python37\lib\site-packages\luaparser\printers.py", line 80, in visit res += self.indent_str(False) + self.visit(itemValue) File "~Python37\lib\site-packages\luaparser\utils\visitor.py", line 37, in _visitor_impl
return method(self, arg) File "~Python37\lib\site-packages\luaparser\printers.py", line 107, in visit res += self.visit(attrValue) File "~Python37\lib\site-packages\luaparser\utils\visitor.py", line 29, in _visitor_impl
return method(self, arg) File "~Python37\lib\site-packages\luaparser\printers.py", line 80, in visit res += self.indent_str(False) + self.visit(itemValue) File "~Python37\lib\site-packages\luaparser\utils\visitor.py", line 37, in _visitor_impl
return method(self, arg) File "~Python37\lib\site-packages\luaparser\printers.py", line 111, in visit res += self.indent_str() + attr + ': ' + self.visit(attrValue) File "~Python37\lib\site-packages\luaparser\utils\visitor.py", line 40, in _visitor_impl
raise VisitorException('No visitor found for class ' + str(type(arg))) luaparser.utils.visitor.VisitorException: No visitor found for class <enum 'StringDelimiter'>

I am using python 3.7.9 and vs code. Note that ~ is used to remove references to my local machine.