#NEWLINE# def copyFrameInfo( self , current ) : #NEWLINE# #INDENT# for ( name , definitions ) in self . frames . getConsts ( current ) . items ( ) : #NEWLINE# #INDENT# if ( len ( definitions ) > 1 ) : #NEWLINE# #INDENT# raise verror . FormatError ( 'Multiple definitions for Constant' ) #NEWLINE# #UNINDENT# for definition in definitions : #NEWLINE# #INDENT# termtype = definition . __class__ . __name__ #NEWLINE# term = Term ( name , set ( [ termtype ] ) ) #NEWLINE# self . dataflow . addTerm ( name , term ) #NEWLINE# #UNINDENT# #UNINDENT# for ( name , definitions ) in self . frames . getConsts ( current ) . items ( ) : #NEWLINE# #INDENT# if ( len ( definitions ) > 1 ) : #NEWLINE# #INDENT# raise verror . FormatError ( 'Multiple definitions for Constant' ) #NEWLINE# #UNINDENT# for definition in definitions : #NEWLINE# #INDENT# cterm = self . makeConstantTerm ( name , definition , current ) #NEWLINE# self . setConstantTerm ( name , cterm ) #NEWLINE# #UNINDENT# #UNINDENT# all_passed = False #NEWLINE# while ( not all_passed ) : #NEWLINE# #INDENT# all_passed = True #NEWLINE# for ( name , definitions ) in self . frames . getConsts ( current ) . items ( ) : #NEWLINE# #INDENT# if ( len ( definitions ) > 1 ) : #NEWLINE# #INDENT# raise verror . FormatError ( 'Multiple definitions for Constant' ) #NEWLINE# #UNINDENT# if self . hasConstant ( name ) : #NEWLINE# #INDENT# continue #NEWLINE# #UNINDENT# for definition in definitions : #NEWLINE# #INDENT# if isinstance ( definition , Genvar ) : #NEWLINE# #INDENT# continue #NEWLINE# #UNINDENT# value = self . optimize ( self . getTree ( definition . value , current ) ) #NEWLINE# if ( not isinstance ( value , DFEvalValue ) ) : #NEWLINE# #INDENT# all_passed = False #NEWLINE# continue #NEWLINE# #UNINDENT# self . setConstant ( name , value )