当前位置: 首页>>代码示例>>Python>>正文


Python Lexer.analyzeString方法代码示例

本文整理汇总了Python中lexer.Lexer.analyzeString方法的典型用法代码示例。如果您正苦于以下问题:Python Lexer.analyzeString方法的具体用法?Python Lexer.analyzeString怎么用?Python Lexer.analyzeString使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在lexer.Lexer的用法示例。


在下文中一共展示了Lexer.analyzeString方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: testLexer

# 需要导入模块: from lexer import Lexer [as 别名]
# 或者: from lexer.Lexer import analyzeString [as 别名]
def testLexer():
	""" Ukazka pouziti lexeru. """
	s = " append (bd fdfdg)"
	l = Lexer() # timhle si zalozite objekt lexilaniho analyzatoru
	l.analyzeString(s) # timhle mu reknete, aby naparsoval string, ktery jste napsali
	while (not l.isEOF()): # tohle slouzi k vypsani vsech tokenu
		print(l.popToken())
开发者ID:mikicz,项目名称:tomki,代码行数:9,代码来源:Tomiki-test.py

示例2: testParser

# 需要导入模块: from lexer import Lexer [as 别名]
# 或者: from lexer.Lexer import analyzeString [as 别名]
def testParser():
	s = """
		function quicksort(seznam)
			{
				x = len(seznam);
				if (x <= 1)
					{
						return seznam;
					}
				else
					{
						pivot = pop(seznam,0);
						mali = [];
						velci = [];
						for prvek in seznam
							{
								if (prvek<pivot)
									{
										append(mali,prvek);
									}
								else
									{
										append(velci,prvek);
									};
							};
						vystup1 = quicksort(mali);
						vystup2 = quicksort(velci);
						vystup = join (vystup1, pivot, vystup2);
						return vystup;
					};
			};
		a = [7,758,6,87,25465,487,654,87,564,687,65];
		b = quicksort(a);
		print b;
		
			"""
	"""s = 
		function rekurze(bla) 
			{
				if(bla<=0){
					return(bla);
				};
				print bla;
				bla = bla - 1;
				return( rekurze(bla) );
			}; 
		rekurze(10); """
#	s = """ 		bla = 5;		function nekdo(){			print("test");		};		nekdo();		print bla;"""
	l = Lexer() # timhle si zalozite objekt lexilaniho analyzatoru
	l.analyzeString(s) # timhle mu reknete, aby naparsoval string, ktery jste napsali

	p = Parser(l) # zalozim si parser a dam mu lexer ze ktereho bude cist tokeny
	ast = p.parse() # naparsuju co mam v lexeru a vratim AST 

	frame = Frame(None)
	ffy=FunctionFrame()
	print(ast) # zobrazim ten strom
	ast.run(frame,ffy)
	print frame.locals
开发者ID:mikicz,项目名称:tomki,代码行数:61,代码来源:Tomiki-test.py

示例3: Tomki

# 需要导入模块: from lexer import Lexer [as 别名]
# 或者: from lexer.Lexer import analyzeString [as 别名]
def Tomki():
    if len(sys.argv)==2:
        filename = sys.argv[1]
        file = open(filename, "r")
        string = file.read()
        file.close()
        Lex = Lexer()
        Lex.analyzeString(string)

        Par = Parser(Lex)
        AST = Par.parse()

        frame = Frame(None)
        functionFrame = FunctionFrame()
        AST.run(frame, functionFrame)
    else:
        print("Error:\nNo file to interpret")
开发者ID:mikicz,项目名称:tomki,代码行数:19,代码来源:Tomki.py


注:本文中的lexer.Lexer.analyzeString方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。