| 
 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectscale.common.Root
scale.clef.Node
scale.clef.type.Type
scale.clef.type.AtomicType
scale.clef.type.NumericType
scale.clef.type.RealType
public abstract class RealType
This is the base class for all scaled types such a C's float and double types.
$Id: RealType.java,v 1.32 2007-03-21 13:32:00 burrill Exp $
 Copyright 2005 by the Scale Compiler Group,
 Department of Computer Science
 University of Massachusetts,
 Amherst MA. 01003, USA
 All Rights Reserved.
 
The size of the type is specified as the minimum number of bits that are required to represent a value of that type.
| Constructor Summary | |
|---|---|
| RealType(int minbitSize) | |
| Method Summary | |
|---|---|
|  int | bitSize()Return the number of bits required to represent the type. | 
|  boolean | isRealType()Return true if type represents a floating point value. | 
|  java.lang.String | mapTypeToCString()Map a type to a C string. | 
|  java.lang.String | mapTypeToF77String()Map a type to a Fortran string. | 
|  RealType | returnRealType()Return if thisis aRealType,
 returnthis. | 
|  void | visit(Predicate p)Process a node by calling its associated routine. | 
|  void | visit(TypePredicate p)Process a node by calling its associated routine. | 
| Methods inherited from class scale.clef.type.NumericType | 
|---|
| isNumericType, returnNumericType | 
| Methods inherited from class scale.clef.type.AtomicType | 
|---|
| alignment, isAtomicType, memorySize, returnAtomicType | 
| Methods inherited from class scale.clef.Node | 
|---|
| getChild, getDecl, getSourceLineNumber, numChildren, setAnnotationLevel, setReportLevel, setSourceLineNumber, toString, toStringChildren, toStringSpecial | 
| Methods inherited from class scale.common.Root | 
|---|
| addAnnotation, allAnnotations, allMatchingAnnotations, getAnnotation, getDisplayName, getDisplayString, getNodeCount, getNodeID, hasAnnotation, hasEqualAnnotation, hashCode, removeAnnotation, removeAnnotations, toStringAnnotations, toStringClass, trace, trace, trace | 
| Methods inherited from class java.lang.Object | 
|---|
| clone, equals, finalize, getClass, notify, notifyAll, wait, wait, wait | 
| Constructor Detail | 
|---|
public RealType(int minbitSize)
minbitSize - is the minimum number of bits required to represent a value of this type| Method Detail | 
|---|
public int bitSize()
AtomicType
bitSize in class AtomicTypepublic boolean isRealType()
isRealType in class Typepublic final RealType returnRealType()
Typethis is a RealType,
 return this.  Otherwise, return null.
returnRealType in class Typepublic void visit(Predicate p)
Node
 Each class has a visit(Predicate p) method.  For
 example, in class ABC:
 
   public void visit(Predicate p)
   {
     p.visitABC(this);
   }
 
 and the class that implements Predicate has a method
 
   public void visitABC(Node n)
   {
     ABC a = (ABC) n;
     ...
   }
 
 Thus, the class that implements Predicate can call
 n.visit(this);where
n is a Node sub-class without
 determining which specific sub-class n is.
 The visit pattern basically avoids implementing a large
 switch statement or defining different methods
 in each class for some purpose.
visit in class NumericTypePredicatepublic void visit(TypePredicate p)
Type
 Each type class has a visit(TypePredicate p) method.
 For example, in class ABC:
 
   public void visit(Predicate p)
   {
     p.visitABC(this);
   }
 
 and the class that implements Predicate has a method
 
   public void visitABC(Node n)
   {
     ABC a = (ABC) n;
     ...
   }
 
 Thus, the class that implements TypePredicate can call
 n.visit(this);where
n is a Node sub-class without
 determining which specific sub-class n is.
 The visit pattern basically avoids implementing a large
 switch statement or defining different methods
 in each class for some purpose.
visit in class NumericTypeTypePredicatepublic java.lang.String mapTypeToCString()
mapTypeToCString in class Typepublic java.lang.String mapTypeToF77String()
mapTypeToF77String in class Type| 
 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||