git/delta-islands.c

#define USE_THE_REPOSITORY_VARIABLE

#include "git-compat-util.h"
#include "object.h"
#include "commit.h"
#include "gettext.h"
#include "hex.h"
#include "tag.h"
#include "tree.h"
#include "pack.h"
#include "tree-walk.h"
#include "diff.h"
#include "progress.h"
#include "refs.h"
#include "khash.h"
#include "pack-bitmap.h"
#include "pack-objects.h"
#include "delta-islands.h"
#include "oid-array.h"
#include "config.h"

KHASH_INIT()

static kh_oid_map_t *island_marks;
static unsigned island_counter;
static unsigned island_counter_core;

struct remote_island {};

struct island_bitmap {};

static uint32_t island_bitmap_size;

/*
 * Allocate a new bitmap; if "old" is not NULL, the new bitmap will be a copy
 * of "old". Otherwise, the new bitmap is empty.
 */
static struct island_bitmap *island_bitmap_new(const struct island_bitmap *old)
{}

static void island_bitmap_or(struct island_bitmap *a, const struct island_bitmap *b)
{}

static int island_bitmap_is_subset(struct island_bitmap *self,
		struct island_bitmap *super)
{}

#define ISLAND_BITMAP_BLOCK(x)
#define ISLAND_BITMAP_MASK(x)

static void island_bitmap_set(struct island_bitmap *self, uint32_t i)
{}

static int island_bitmap_get(struct island_bitmap *self, uint32_t i)
{}

int in_same_island(const struct object_id *trg_oid, const struct object_id *src_oid)
{}

int island_delta_cmp(const struct object_id *a, const struct object_id *b)
{}

static struct island_bitmap *create_or_get_island_marks(struct object *obj)
{}

static void set_island_marks(struct object *obj, struct island_bitmap *marks)
{}

static void mark_remote_island_1(struct repository *r,
				 struct remote_island *rl,
				 int is_core_island)
{}

struct tree_islands_todo {};

static int tree_depth_compare(const void *a, const void *b)
{}

void resolve_tree_islands(struct repository *r,
			  int progress,
			  struct packing_data *to_pack)
{}

struct island_load_data {};
static char *core_island_name;

static void free_config_regexes(struct island_load_data *ild)
{}

static void free_remote_islands(kh_str_t *remote_islands)
{}

static int island_config_callback(const char *k, const char *v,
				  const struct config_context *ctx UNUSED,
				  void *cb)
{}

static void add_ref_to_island(kh_str_t *remote_islands, const char *island_name,
				const struct object_id *oid)
{}

static int find_island_for_ref(const char *refname, const char *referent UNUSED, const struct object_id *oid,
			       int flags UNUSED, void *cb)
{}

static struct remote_island *get_core_island(kh_str_t *remote_islands)
{}

static void deduplicate_islands(kh_str_t *remote_islands, struct repository *r)
{}

void load_delta_islands(struct repository *r, int progress)
{}

void propagate_island_marks(struct commit *commit)
{}

void free_island_marks(void)
{}

int compute_pack_layers(struct packing_data *to_pack)
{}