pub fn allocate_metadata_dep_nodes(self) {
        // We cannot use the query versions of crates() and crate_hash(), since
        // those would need the DepNodes that we are allocating here.
        for cnum in self.cstore.crates_untracked() {
            let dep_node = DepConstructor::CrateMetadata(self, cnum);
            let crate_hash = self.cstore.crate_hash_untracked(cnum);
            self.dep_graph.with_task(
                dep_node,
                self,
                crate_hash,
                |_, x| x, // No transformation needed
                dep_graph::hash_result,
            );
        }
    }
// This method makes sure that we have a DepNode and a Fingerprint for
// every upstream crate. It needs to be called once right after the tcx is
// created.
// With full-fledged red/green, the method will probably become unnecessary
// as this will be done on-demand.
This method makes sure that we have a DepNode and a Fingerprint for
every upstream crate. It needs to be called once right after the tcx is
created.
With full-fledged red/green, the method will probably become unnecessary
as this will be done on-demand.
This method makes sure that we have a DepNode and a Fingerprint for every upstream crate . It needs to be called once right after the tcx is created . With full - fledged red / green the method will probably become unnecessary as this will be done on - demand .
pub fn allocate_metadata_dep_nodes(self) {
        // We cannot use the query versions of crates() and crate_hash(), since
        // those would need the DepNodes that we are allocating here.
        for cnum in self.cstore.crates_untracked() {
            let dep_node = DepConstructor::CrateMetadata(self, cnum);
            let crate_hash = self.cstore.crate_hash_untracked(cnum);
            self.dep_graph.with_task(
                dep_node,
                self,
                crate_hash,
                |_, x| x, // No transformation needed
                dep_graph::hash_result,
            );
        }
    }
pub fn allocate_metadata_dep_nodes ( self ) { // We cannot use the query versions of crates() and crate_hash(), since // those would need the DepNodes that we are allocating here. for cnum in self . cstore . crates_untracked ( ) { let dep_node = DepConstructor :: CrateMetadata ( self , cnum ) ; let crate_hash = self . cstore . crate_hash_untracked ( cnum ) ; self . dep_graph . with_task ( dep_node , self , crate_hash , | _ , x | x , // No transformation needed dep_graph :: hash_result , ) ; } }
This method makes sure that we have a DepNode and a Fingerprint for
every upstream crate.
This method makes sure that we have a DepNode and a Fingerprint for every upstream crate .
self
self