gov.llnl.babel.backend.fortran
Class TypeModule

java.lang.Object
  extended by gov.llnl.babel.backend.fortran.TypeModule

public class TypeModule
extends java.lang.Object

This class generates a FORTRAN 90 module holding the derived type for client-side users. The type is held separately to avoid circular dependencies. If d_sym is null, we generate a type for generic arrays. Since this is A special case, the code is now full of little hacks to deal with it.


Constructor Summary
TypeModule(LanguageWriterForFortran writer, Symbol sym)
           
 
Method Summary
 void generateCode(Context context)
           
static void generateCode(Symbol sym, LanguageWriterForFortran writer, Context context)
          Generate the FORTRAN 90 type module for a sidl extendable (i.e., class or interface).
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TypeModule

public TypeModule(LanguageWriterForFortran writer,
                  Symbol sym)
Method Detail

generateCode

public void generateCode(Context context)

generateCode

public static void generateCode(Symbol sym,
                                LanguageWriterForFortran writer,
                                Context context)
                         throws CodeGenerationException
Generate the FORTRAN 90 type module for a sidl extendable (i.e., class or interface).

Throws:
CodeGenerationException - a catch all exception to indicate problems in the code generation phase.