def p_Assign(t): '''Assign : ID EQUALS Expr | ID LBRK Expr RBRK EQUALS Expr''' if len(t) == 4: t[0] = n.Assign(t[1], t[3]) else: t[0] = n.Assign(t[1], t[3], t[6])
def Assign_ST(self): # 12. Assign = Designator ":=" Expression tmpStartPos = self.curPos Location_node = self.Designator_ST() tmpResult = self.match([":="], isweakSymbol=True) if self.weakSymbolFlag is True and tmpResult is None and self.current.Type == "keyword" and self.current.Value_Str == "=": self.fixMissingWeakSymbol(tmpResult, ":=") self.next() Expression_node = self.Expression_ST() tmpEndPos = self.curPos - 1 return Node.Assign(Location_node, Expression_node, tmpStartPos, tmpEndPos, self.myErrHandler)