class_docstr: Manipulate expressions using paths.
  
  EPath grammar in EBNF notation::
  
      literal   ::= /[A-Za-z_][A-Za-z_0-9]*/
      number    ::= /-?\d+/
      type      ::= literal
      attribute ::= literal "?"
      all       ::= "*"
      slice     ::= "[" number? (":" number? (":" number?)?)? "]"
      range     ::= all | slice
      query     ::= (type | attribute) ("|" (type | attribute))*
      selector  ::= range | query range?
      path      ::= "/" selector ("/" selector)*
  
  See the docstring of the epath() function.
class_docstr_tok: ["Manipulate","expressions","using","paths",".","EPath","grammar","in","EBNF","notation",":",":","literal",":",":=","\/","[","A-Za-z_","]","[","A-Za-z_0-9","]","*","\/","number",":",":=","\/-","?","\\d+\/","type",":",":=","literal","attribute",":",":=","literal","``","?","''","all",":",":=","``","*","''","slice",":",":=","``","[","``","number","?","(","``",":","''","number","?","(","``",":","''","number","?",")","?",")","?","``","]","''","range",":",":=","all","|","slice","query",":",":=","(","type","|","attribute",")","(","``","|","''","(","type","|","attribute",")",")","*","selector",":",":=","range","|","query","range","?","path",":",":=","``","\/","''","selector","(","``","\/","''","selector",")","*","See","the","docstring","of","the","epath","(",")","function","."]
docstr: Sort ``expr.args`` using printing order. 
docstr_tok: ["Sort","``","expr.args","``","using","printing","order","."]
code: def _get_ordered_args(self, expr):
      """Sort ``expr.args`` using printing order."""
      if expr.is_Add:
          return expr.as_ordered_terms()
      elif expr.is_Mul:
          return expr.as_ordered_factors()
      else:
          return expr.args
  
file_path: sympy/sympy/simplify/epathtools.py
imports: from sympy.core import Basic
label_desc: Use image node_id 3 for calling the EPath obj's underlying member method code with example usage: obj._get_ordered_args(expr) and returns: expr, expr, expr