Exemple #1
0
	def parseinfo(self,e):
		keycode = e.GetKeyCode()
		if keycode == wx.WXK_RETURN or keycode == wx.WXK_NUMPAD_ENTER or keycode == wx.WXK_TAB:
			if self.editname.GetValue() == "exit" or self.editname.GetValue() == "exit;":
				exit(0)
			else:
				z = Interpreter()
				#thread.start_new_thread(z.parse(self.editname.GetValue()))
				z.parse(self.editname.GetValue())
			e.EventObject.Navigate()
		e.Skip()
Exemple #2
0
    # don't care about encoding right now
    if ( dostdin ):
        ## interactive interpreter
        lexer = Lex( )
        parse_eval = Interpreter( lexer, debug, safe_mode,update,stacksize )
        REPL( lang, lexer, parse_eval, debug )
    else:
        ## evaluate a files sequentially
        exitcode = 0
        for files in fname:
            ## evaluate a file
            lexer = Lex(files)
            if ( debug ): lexer.dump_tokens()
            parse_eval = Interpreter( lexer, debug, safe_mode, update, stacksize )  

            try:
                parse_eval.parse()
            except Exception as e:
                print(u"parsing the code '%s' failed with exception:\n\t %s"%(files,str(e)))
                if ( debug ):  print("*"*60);  print(str(parse_eval))
                exitcode = 255
                
            try:
                env = parse_eval.evaluate()
            except Exception as e:
                print(u"evaluating the code '%s' failed with exception:\n\t %s"%(files,str(e)))
                if debug: print("*"*60);  print(str(e))
                exitcode = 255
        sys.exit(exitcode)
    pass