public void consolidate ( ) { Decl . Module module = target . getModule ( ) ; for ( ExternalGroup group : consolidations ) { // TODO: this could be made way more efficient by collecting all consolidate // units into one batch module . putExtern ( group . consolidate ( ) ) ; } consolidations . clear ( ) ; }
Consolidate the status of external symbols . For example this will ensure all external units which have imported symbols are made available . Likewise it may garbage collect available symbols and units which are no longer required .