{"size": 1097, "ext": "scrbl", "max_stars_repo_path": "libgit2/scribblings/indexer.scrbl", "max_stars_repo_name": "guygastineau/libgit2", "max_stars_repo_stars_event_min_datetime": null, "max_stars_repo_stars_event_max_datetime": null, "max_issues_repo_path": "libgit2/scribblings/indexer.scrbl", "max_issues_repo_name": "guygastineau/libgit2", "max_issues_repo_issues_event_min_datetime": null, "max_issues_repo_issues_event_max_datetime": null, "max_forks_repo_path": "libgit2/scribblings/indexer.scrbl", "max_forks_repo_name": "guygastineau/libgit2", "max_forks_repo_forks_event_min_datetime": null, "max_forks_repo_forks_event_max_datetime": null}
{"max_stars_count": null, "max_issues_count": null, "max_forks_count": null, "avg_line_length": 19.9454545455, "max_line_length": 131, "alphanum_fraction": 0.6298997265}
#lang scribble/manual

@(require (for-label racket))

@title{Indexer}

@defmodule[libgit2/include/indexer]


@defproc[(git_indexer_append
          [idx indexer?]
          [data bytes?]
          [size integer?]
          [stats git_transfer_progress?])
         integer?]{
 Add data to the indexer

}

@defproc[(git_indexer_commit
          [idx indexer?]
          [stats transfer_progress?])
         integer?]{
 Finalize the pack and index

 Resolve any pending deltas and write out the index file

}

@defproc[(git_indexer_free
          [idx indexer?])
         void?]{
 Free the indexer and its resources

}

@defproc[(git_indexer_hash
          [idx indexer?])
         oid?]{
 Get the packfile's hash

 A packfile's name is derived from the sorted hashing of all object names. This is only correct after the index has been finalized.

}

@defproc[(git_indexer_new
          [path string?]
          [int unsigned]
          [odb (or/c odb? #f)]
          [progress_cb git_transfer_progress_cb]
          [progress_cb_payload bytes?])
         indexer?]{
 Create a new indexer instance
}
