class_docstr: Represents an algebraic operation, such as '+', '-', etc.
docstr: Constructor.
  
  Args:
    symbol: The character which represents this operation, such as '+' for
        addition.
    precedence: Operator precedence. This will determine where parentheses
        are used.
    associative: If true, the order of the operands does not matter.
docstr_tok: ["Constructor",".","Args",":","symbol",":","The","character","which","represents","this","operation",",","such","as","'+","'","for","addition",".","precedence",":","Operator","precedence",".","This","will","determine","where","parentheses","are","used",".","associative",":","If","true",",","the","order","of","the","operands","does","not","matter","."]
code: def __init__(self, symbol, precedence, associative=False):
      """Constructor.
  
      Args:
        symbol: The character which represents this operation, such as '+' for
            addition.
        precedence: Operator precedence. This will determine where parentheses
            are used.
        associative: If true, the order of the operands does not matter.
      """
      self.symbol = symbol
      self.precedence = precedence
      self.associative = associative
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  from collections import namedtuple
  import random
  import six
  from six.moves import range
  import sympy
label_desc: Use image node_id 1 to create a new ExprOp object from inherited base classes: object with example: obj = ExprOp(symbol, precedence, associative)