mercurial/mpatch.h
author Joerg Sonnenberger <joerg@bec.de>
Mon, 03 Jan 2022 01:09:56 +0100
changeset 48578 28f0092ec89f
parent 48280 d86908050375
permissions -rw-r--r--
exchange: add fast path for subrepo check on push Try to check if .hgsub and .hgsubstate exist at all before looking for them in every changeset to be pushed. The latter can be quite expensive for large repositories and the existance check is almost free. Differential Revision: https://phab.mercurial-scm.org/D11956
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
48280
d86908050375 hg: remove reserved identifiers
David Demelier <markand@malikania.fr>
parents: 34800
diff changeset
     1
#ifndef HG_MPATCH_H
d86908050375 hg: remove reserved identifiers
David Demelier <markand@malikania.fr>
parents: 34800
diff changeset
     2
#define HG_MPATCH_H
29707
b9b9f9a92481 mpatch: split mpatch into two files
Maciej Fijalkowski <fijall@gmail.com>
parents:
diff changeset
     3
29708
55dd12204b8e mpatch: remove dependency on Python.h in mpatch.c
Maciej Fijalkowski <fijall@gmail.com>
parents: 29707
diff changeset
     4
#define MPATCH_ERR_NO_MEM -3
55dd12204b8e mpatch: remove dependency on Python.h in mpatch.c
Maciej Fijalkowski <fijall@gmail.com>
parents: 29707
diff changeset
     5
#define MPATCH_ERR_CANNOT_BE_DECODED -2
55dd12204b8e mpatch: remove dependency on Python.h in mpatch.c
Maciej Fijalkowski <fijall@gmail.com>
parents: 29707
diff changeset
     6
#define MPATCH_ERR_INVALID_PATCH -1
55dd12204b8e mpatch: remove dependency on Python.h in mpatch.c
Maciej Fijalkowski <fijall@gmail.com>
parents: 29707
diff changeset
     7
29707
b9b9f9a92481 mpatch: split mpatch into two files
Maciej Fijalkowski <fijall@gmail.com>
parents:
diff changeset
     8
struct mpatch_frag {
b9b9f9a92481 mpatch: split mpatch into two files
Maciej Fijalkowski <fijall@gmail.com>
parents:
diff changeset
     9
	int start, end, len;
b9b9f9a92481 mpatch: split mpatch into two files
Maciej Fijalkowski <fijall@gmail.com>
parents:
diff changeset
    10
	const char *data;
b9b9f9a92481 mpatch: split mpatch into two files
Maciej Fijalkowski <fijall@gmail.com>
parents:
diff changeset
    11
};
b9b9f9a92481 mpatch: split mpatch into two files
Maciej Fijalkowski <fijall@gmail.com>
parents:
diff changeset
    12
b9b9f9a92481 mpatch: split mpatch into two files
Maciej Fijalkowski <fijall@gmail.com>
parents:
diff changeset
    13
struct mpatch_flist {
b9b9f9a92481 mpatch: split mpatch into two files
Maciej Fijalkowski <fijall@gmail.com>
parents:
diff changeset
    14
	struct mpatch_frag *base, *head, *tail;
b9b9f9a92481 mpatch: split mpatch into two files
Maciej Fijalkowski <fijall@gmail.com>
parents:
diff changeset
    15
};
b9b9f9a92481 mpatch: split mpatch into two files
Maciej Fijalkowski <fijall@gmail.com>
parents:
diff changeset
    16
34800
761355833867 mpatch: reformat function prototypes with clang-format
Augie Fackler <augie@google.com>
parents: 29761
diff changeset
    17
int mpatch_decode(const char *bin, ssize_t len, struct mpatch_flist **res);
29707
b9b9f9a92481 mpatch: split mpatch into two files
Maciej Fijalkowski <fijall@gmail.com>
parents:
diff changeset
    18
ssize_t mpatch_calcsize(ssize_t len, struct mpatch_flist *l);
b9b9f9a92481 mpatch: split mpatch into two files
Maciej Fijalkowski <fijall@gmail.com>
parents:
diff changeset
    19
void mpatch_lfree(struct mpatch_flist *a);
b9b9f9a92481 mpatch: split mpatch into two files
Maciej Fijalkowski <fijall@gmail.com>
parents:
diff changeset
    20
int mpatch_apply(char *buf, const char *orig, ssize_t len,
34800
761355833867 mpatch: reformat function prototypes with clang-format
Augie Fackler <augie@google.com>
parents: 29761
diff changeset
    21
                 struct mpatch_flist *l);
761355833867 mpatch: reformat function prototypes with clang-format
Augie Fackler <augie@google.com>
parents: 29761
diff changeset
    22
struct mpatch_flist *
761355833867 mpatch: reformat function prototypes with clang-format
Augie Fackler <augie@google.com>
parents: 29761
diff changeset
    23
mpatch_fold(void *bins, struct mpatch_flist *(*get_next_item)(void *, ssize_t),
761355833867 mpatch: reformat function prototypes with clang-format
Augie Fackler <augie@google.com>
parents: 29761
diff changeset
    24
            ssize_t start, ssize_t end);
29707
b9b9f9a92481 mpatch: split mpatch into two files
Maciej Fijalkowski <fijall@gmail.com>
parents:
diff changeset
    25
b9b9f9a92481 mpatch: split mpatch into two files
Maciej Fijalkowski <fijall@gmail.com>
parents:
diff changeset
    26
#endif