#define USE_THE_REPOSITORY_VARIABLE
#include "git-compat-util.h"
#include "dir.h"
#include "gettext.h"
#include "hex.h"
#include "commit.h"
#include "diff.h"
#include "revision.h"
#include "list-objects-filter.h"
#include "list-objects-filter-options.h"
#include "oidmap.h"
#include "oidset.h"
#include "object-name.h"
#include "object-store-ll.h"
#define FILTER_SHOWN_BUT_REVISIT …
struct subfilter { … };
struct filter { … };
static enum list_objects_filter_result filter_blobs_none(
struct repository *r UNUSED,
enum list_objects_filter_situation filter_situation,
struct object *obj,
const char *pathname UNUSED,
const char *filename UNUSED,
struct oidset *omits,
void *filter_data_ UNUSED)
{ … }
static void filter_blobs_none__init(
struct list_objects_filter_options *filter_options UNUSED,
struct filter *filter)
{ … }
struct filter_trees_depth_data { … };
struct seen_map_entry { … };
static int filter_trees_update_omits(
struct object *obj,
struct oidset *omits,
int include_it)
{ … }
static enum list_objects_filter_result filter_trees_depth(
struct repository *r UNUSED,
enum list_objects_filter_situation filter_situation,
struct object *obj,
const char *pathname UNUSED,
const char *filename UNUSED,
struct oidset *omits,
void *filter_data_)
{ … }
static void filter_trees_free(void *filter_data) { … }
static void filter_trees_depth__init(
struct list_objects_filter_options *filter_options,
struct filter *filter)
{ … }
struct filter_blobs_limit_data { … };
static enum list_objects_filter_result filter_blobs_limit(
struct repository *r,
enum list_objects_filter_situation filter_situation,
struct object *obj,
const char *pathname UNUSED,
const char *filename UNUSED,
struct oidset *omits,
void *filter_data_)
{ … }
static void filter_blobs_limit__init(
struct list_objects_filter_options *filter_options,
struct filter *filter)
{ … }
struct frame { … };
struct filter_sparse_data { … };
static enum list_objects_filter_result filter_sparse(
struct repository *r,
enum list_objects_filter_situation filter_situation,
struct object *obj,
const char *pathname,
const char *filename,
struct oidset *omits,
void *filter_data_)
{ … }
static void filter_sparse_free(void *filter_data)
{ … }
static void filter_sparse_oid__init(
struct list_objects_filter_options *filter_options,
struct filter *filter)
{ … }
struct filter_object_type_data { … };
static enum list_objects_filter_result filter_object_type(
struct repository *r UNUSED,
enum list_objects_filter_situation filter_situation,
struct object *obj,
const char *pathname UNUSED,
const char *filename UNUSED,
struct oidset *omits UNUSED,
void *filter_data_)
{ … }
static void filter_object_type__init(
struct list_objects_filter_options *filter_options,
struct filter *filter)
{ … }
struct combine_filter_data { … };
static enum list_objects_filter_result process_subfilter(
struct repository *r,
enum list_objects_filter_situation filter_situation,
struct object *obj,
const char *pathname,
const char *filename,
struct subfilter *sub)
{ … }
static enum list_objects_filter_result filter_combine(
struct repository *r,
enum list_objects_filter_situation filter_situation,
struct object *obj,
const char *pathname,
const char *filename,
struct oidset *omits UNUSED,
void *filter_data)
{ … }
static void filter_combine__free(void *filter_data)
{ … }
static void filter_combine__finalize_omits(
struct oidset *omits,
void *filter_data)
{ … }
static void filter_combine__init(
struct list_objects_filter_options *filter_options,
struct filter* filter)
{ … }
filter_init_fn;
static filter_init_fn s_filters[] = …;
struct filter *list_objects_filter__init(
struct oidset *omitted,
struct list_objects_filter_options *filter_options)
{ … }
enum list_objects_filter_result list_objects_filter__filter_object(
struct repository *r,
enum list_objects_filter_situation filter_situation,
struct object *obj,
const char *pathname,
const char *filename,
struct filter *filter)
{ … }
void list_objects_filter__free(struct filter *filter)
{ … }