BlockIt
blockit::Fortran::blocks Namespace Reference

Classes

class  FortranBlock
class  AFile
class  EmptyFile
class  Template
class  Program
class  Module
class  Function
class  Subroutine
class  Interface
class  InterfaceA
class  Type
class  AutoInterface
class  AutoPrivate
class  AutoUse
class  Enumeration
class  Foreach
class  TestRunner
class  ParallelTestRunner
class  AutoDelete
class  GarbageCollect
class  Specialization
class  Instantiate
class  Pod
class  Prepod
class  PyF95Directives

Functions

def izip_longest
def parseTemplateSpecString
def mergeTemplateAndObjects
def templateSpecToTuple
def createSymMap

Variables

list __all__
tuple globalSymbolTable = SymbolTable( '|' )
tuple globalSymbolMap = SymbolTable()
tuple globalDependencyTable = SymbolTable()
tuple isPod = lambda(x,v)
tuple isPrepod = lambda(x,v)
tuple isForeach = lambda(x,v)
tuple isFunction = lambda(x,v)
tuple isModule = lambda(x,v)
tuple isAType = lambda(x,v)
tuple isAFile = lambda(x,v)
tuple isInterface = lambda(x,v)
tuple isProgram = lambda(x,v)
tuple isSubroutine = lambda(x,v)
tuple isTemplate = lambda(x,v)
tuple isAutoInterface = lambda(x,v)
tuple isAutoPrivate = lambda(x,v)
tuple isAutoDelete = lambda(x,v)
tuple isTemplated = lambda(x,v)
tuple isRoot = lambda(x,v)
tuple isSpecialization = lambda(x,v)
tuple isPyF95Directives = lambda(x,v)
tuple hasAsName = lambda(x,v)
tuple hasTempParent = lambda(x,v)

Function Documentation

def blockit::Fortran::blocks::createSymMap (   table)
Loop through all the files blocks and resolve the symbols in the
dependency lists.  Return a dictionary of names with mappings

Definition at line 207 of file blocks.py.

def blockit::Fortran::blocks::izip_longest (   args,
  kwds 
)

Definition at line 79 of file blocks.py.

def blockit::Fortran::blocks::mergeTemplateAndObjects (   cls,
  objs 
)
Merge a class pairs list with an objects tuple and return a substitution
pair list.  If there is no object to pair with a class, use the default
specified. For example:

>>> classes = [('object', None), ('element', 'integer')]
>>> objects = ('String', '*')
>>> mergeTemplateAndObjects(classes, objects)
[('object', 'String'), ('element', 'integer')]

Definition at line 163 of file blocks.py.

def blockit::Fortran::blocks::parseTemplateSpecString (   s)
Scan the template string and parse out the defined templates.  Returns
a list of tuples with each type and its template specification.  Uses the
TEMPLATE_DECL grammar.

Examples:
---------
>>> parseTemplateSpecString('DLList<List<integer>, Dict<String, List<integer>>>')
>>> [('DLList', 'List<integer>,Dict<String,List<integer>>')]

>>> parseTemplateSpecString('List<integer>,Dict<String,List<integer>>')
>>> [('List', 'integer'), ('Dict', 'String,List<integer>')]

Definition at line 145 of file blocks.py.

def blockit::Fortran::blocks::templateSpecToTuple (   string_)
Explode a template string into its parts and return a tuple of the
components.

Example:
--------
>>> templateSpecToTuple('integer, AList<integer,real>')
('integer','AList<integer,real>')

Input
-----
string_ : template spec string

Definition at line 188 of file blocks.py.


Variable Documentation

Definition at line 18 of file blocks.py.

Definition at line 101 of file blocks.py.

Definition at line 100 of file blocks.py.

Definition at line 139 of file blocks.py.

Definition at line 140 of file blocks.py.

tuple blockit::Fortran::blocks::isAFile = lambda(x,v)

Definition at line 127 of file blocks.py.

tuple blockit::Fortran::blocks::isAType = lambda(x,v)

Definition at line 126 of file blocks.py.

Definition at line 134 of file blocks.py.

Definition at line 132 of file blocks.py.

Definition at line 133 of file blocks.py.

Definition at line 123 of file blocks.py.

Definition at line 124 of file blocks.py.

Definition at line 128 of file blocks.py.

Definition at line 125 of file blocks.py.

tuple blockit::Fortran::blocks::isPod = lambda(x,v)

Definition at line 121 of file blocks.py.

Definition at line 122 of file blocks.py.

Definition at line 129 of file blocks.py.

Definition at line 138 of file blocks.py.

tuple blockit::Fortran::blocks::isRoot = lambda(x,v)

Definition at line 136 of file blocks.py.

Definition at line 137 of file blocks.py.

Definition at line 130 of file blocks.py.

Definition at line 131 of file blocks.py.

Definition at line 135 of file blocks.py.

 All Classes Namespaces Files Functions Variables Properties