Best Python code snippet using avocado_python
spark.py
Source:spark.py  
...254		self.AST = AST255	def preprocess(self, rule, func):256		rebind = lambda lhs, self=self: \257				lambda args, lhs=lhs, self=self: \258					self.buildASTNode(args, lhs)259		lhs, rhs = rule260		return rule, rebind(lhs)261	def buildASTNode(self, args, lhs):262		children = []263		for arg in args:264			if isinstance(arg, self.AST):265				children.append(arg)266			else:267				children.append(self.terminal(arg))268		return self.nonterminal(lhs, children)269	def terminal(self, token):	return token270	def nonterminal(self, type, args):271		rv = self.AST(type)272		rv[:len(args)] = args273		return rv274class GenericASTTraversalPruningException:275	pass...astbuilder.py
Source:astbuilder.py  
...9class ASTBuilder(parser.Parser):10	def __init__(self, start = 'file_input'):11		parser.Parser.__init__(self, start)12	def preprocess(self, rule, func):13		rebind = lambda lhs, self=self: lambda args, lhs=lhs, self=self: self.buildASTNode(args, lhs)14		lhs, rhs = rule15		return rule, rebind(lhs)16	def buildASTNode(self, args, lhs):17		children = []18		for varg in args:19			#Arg can be array in case of 'array' type20			if not isinstance(varg, list):21				varg = [varg,]22			for arg in varg:23				if isinstance(arg, astnode.ASTNonTerminalNode):24					children.append(arg)25				else:26					children.append(self.terminal(arg))27		#When node is 'array' type, skip its creation and return array of children28		if lhs in self.ArrayTypes:29			return children30		#Check 'pass' types...Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!
