#define USE_THE_REPOSITORY_VARIABLE
#include "git-compat-util.h"
#include "environment.h"
#include "gettext.h"
#include "range-diff.h"
#include "object-name.h"
#include "string-list.h"
#include "run-command.h"
#include "strvec.h"
#include "hashmap.h"
#include "xdiff-interface.h"
#include "linear-assignment.h"
#include "diffcore.h"
#include "commit.h"
#include "pager.h"
#include "pretty.h"
#include "repository.h"
#include "userdiff.h"
#include "apply.h"
#include "revision.h"
struct patch_util { … };
static int read_patches(const char *range, struct string_list *list,
const struct strvec *other_arg)
{ … }
static int patch_util_cmp(const void *cmp_data UNUSED,
const struct hashmap_entry *ha,
const struct hashmap_entry *hb,
const void *keydata)
{ … }
static void find_exact_matches(struct string_list *a, struct string_list *b)
{ … }
static int diffsize_consume(void *data,
char *line UNUSED,
unsigned long len UNUSED)
{ … }
static void diffsize_hunk(void *data,
long ob UNUSED, long on UNUSED,
long nb UNUSED, long nn UNUSED,
const char *func UNUSED, long funclen UNUSED)
{ … }
static int diffsize(const char *a, const char *b)
{ … }
static void get_correspondences(struct string_list *a, struct string_list *b,
int creation_factor)
{ … }
static void output_pair_header(struct diff_options *diffopt,
int patch_no_width,
struct strbuf *buf,
struct strbuf *dashes,
struct patch_util *a_util,
struct patch_util *b_util)
{ … }
static struct userdiff_driver section_headers = …;
static struct diff_filespec *get_filespec(const char *name, const char *p)
{ … }
static void patch_diff(const char *a, const char *b,
struct diff_options *diffopt)
{ … }
static const char *output_prefix_cb(struct diff_options *opt UNUSED, void *data)
{ … }
static void output(struct string_list *a, struct string_list *b,
struct range_diff_options *range_diff_opts)
{ … }
int show_range_diff(const char *range1, const char *range2,
struct range_diff_options *range_diff_opts)
{ … }
int is_range_diff_range(const char *arg)
{ … }