coins.ffront
Class BinaryNode

java.lang.Object
  extended bycoins.ffront.Pair
      extended bycoins.ffront.BinaryNode
All Implemented Interfaces:
HasConstValue, Node
Direct Known Subclasses:
PowerNode

public class BinaryNode
extends Pair
implements HasConstValue

Binary Expression


Field Summary
(package private)  DeclManager fDeclMgr
           
(package private)  ExecStmtManager fESMgr
           
(package private)  HirUtility fHirUtil
           
(package private)  TypeUtility fTypeUtil
           
(package private)  HIR hir
           
 
Fields inherited from class coins.ffront.Pair
fHir, left, right
 
Constructor Summary
BinaryNode(int op, Node left, Node right, FirToHir pfHir)
           
 
Method Summary
(package private)  Exp character_operation(FortranCharacterExp e1, FortranCharacterExp e2)
           
 FNumber getConstValue()
           
 Exp makeArgAddr(FStmt pCallStmt)
          Make HIR Exp node from this expression as a call-by-address parameter in pCallStmt.
 Exp makeExp()
          Make HIR Exp node of this binary expression.
 java.lang.String opString()
           
 void print(int level, java.lang.String spaces)
           
 java.lang.String toString()
           
 
Methods inherited from class coins.ffront.Pair
getLeft, getRight
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

fHirUtil

HirUtility fHirUtil

fTypeUtil

TypeUtility fTypeUtil

fDeclMgr

DeclManager fDeclMgr

fESMgr

ExecStmtManager fESMgr

hir

HIR hir
Constructor Detail

BinaryNode

public BinaryNode(int op,
                  Node left,
                  Node right,
                  FirToHir pfHir)
Method Detail

print

public void print(int level,
                  java.lang.String spaces)
Specified by:
print in interface Node
Overrides:
print in class Pair

toString

public java.lang.String toString()
Specified by:
toString in interface Node
Overrides:
toString in class Pair

opString

public java.lang.String opString()

makeExp

public Exp makeExp()
Make HIR Exp node of this binary expression. In case of complex expression make a special ComplexExp node which is composed of a real part expression node and an imaginary part expression node.

Specified by:
makeExp in interface Node
Overrides:
makeExp in class Pair
Returns:
HIR Exp.

character_operation

Exp character_operation(FortranCharacterExp e1,
                        FortranCharacterExp e2)

makeArgAddr

public Exp makeArgAddr(FStmt pCallStmt)
Make HIR Exp node from this expression as a call-by-address parameter in pCallStmt.

Specified by:
makeArgAddr in interface Node
Overrides:
makeArgAddr in class Pair
Parameters:
pCallStmt - a call statement or a function call expression
Returns:
HIR Exp.

getConstValue

public FNumber getConstValue()
Specified by:
getConstValue in interface HasConstValue