code: def load_just_in_time_genome_alignment(path, ref_spec, extensions=None,
                                         index_exts=None, fail_no_index=True,
                                         verbose=False):
      
      if index_exts is None and fail_no_index:
        raise ValueError("Failure on no index specified for loading genome " +
                         "alignment, but no index extensions specified")
  
      extensions = __trim_extensions_dot(extensions)
      index_exts = __trim_extensions_dot(index_exts)
  
      partial_chrom_files = {}
      whole_chrom_files = {}
      for fn in os.listdir(path):
        pth = os.path.join(path, fn)
        if os.path.isfile(pth):
          base, ext = os.path.splitext(pth)
          ext = __trim_extension_dot(ext)
          if extensions is None or ext in extensions:
            idx_path = __find_index(pth, index_exts)
            if idx_path is None and fail_no_index:
              raise PyokitIOError("No index file for " + fn)
            chrom, start, end = __split_genomic_interval_filename(fn)
            assert((start is None and end is None) or
                   (start is not None and end is not None))
            if start is None:
              if chrom in whole_chrom_files:
                raise PyokitIOError("multiple files for chrom " + chrom)
              whole_chrom_files[chrom] = (pth, idx_path)
            else:
              k = (chrom, start, end)
              if k in partial_chrom_files:
                other_pth = partial_chrom_files[k][0]
                raise PyokitIOError("multiple files for " + str(k) + " --> " +
                                    pth + " and " + other_pth)
              partial_chrom_files[k] = (pth, idx_path)
  
      def factory(k):
        pth, idx = k
        return build_genome_alignment_from_file(pth, ref_spec, idx, verbose)
  
      return JustInTimeGenomeAlignment(whole_chrom_files, partial_chrom_files,
                                       factory)
docs: Load a just-in-time genome alignment from a directory.