Junio C Hamano | be3cfa8 | 2005-04-26 09:25:05 -0700 | [diff] [blame] | 1 | /* |
| 2 | * Copyright (C) 2005 Junio C Hamano |
| 3 | */ |
Junio C Hamano | 86436c2 | 2005-04-25 18:22:47 -0700 | [diff] [blame] | 4 | #ifndef DIFF_H |
| 5 | #define DIFF_H |
| 6 | |
Junio C Hamano | 67574c4 | 2005-06-01 11:38:07 -0700 | [diff] [blame] | 7 | #define DIFF_FILE_CANON_MODE(mode) \ |
| 8 | (S_ISREG(mode) ? (S_IFREG | ce_permissions(mode)) : \ |
| 9 | S_ISLNK(mode) ? S_IFLNK : S_IFDIR) |
| 10 | |
Junio C Hamano | 77eb272 | 2005-04-27 09:21:00 -0700 | [diff] [blame] | 11 | extern void diff_addremove(int addremove, |
| 12 | unsigned mode, |
| 13 | const unsigned char *sha1, |
| 14 | const char *base, |
| 15 | const char *path); |
| 16 | |
| 17 | extern void diff_change(unsigned mode1, unsigned mode2, |
| 18 | const unsigned char *sha1, |
| 19 | const unsigned char *sha2, |
| 20 | const char *base, const char *path); |
| 21 | |
Junio C Hamano | b6d8f30 | 2005-05-23 14:55:33 -0700 | [diff] [blame] | 22 | extern void diff_helper_input(unsigned mode1, |
| 23 | unsigned mode2, |
| 24 | const unsigned char *sha1, |
| 25 | const unsigned char *sha2, |
| 26 | const char *path1, |
| 27 | int status, |
| 28 | int score, |
| 29 | const char *path2); |
Junio C Hamano | 81e50ea | 2005-05-21 19:42:18 -0700 | [diff] [blame] | 30 | |
Junio C Hamano | 77eb272 | 2005-04-27 09:21:00 -0700 | [diff] [blame] | 31 | extern void diff_unmerge(const char *path); |
| 32 | |
Junio C Hamano | 57fe64a | 2005-05-19 19:00:36 -0700 | [diff] [blame] | 33 | extern int diff_scoreopt_parse(const char *opt); |
| 34 | |
Junio C Hamano | 19feebc | 2005-05-27 15:54:37 -0700 | [diff] [blame] | 35 | #define DIFF_SETUP_REVERSE 1 |
Junio C Hamano | f0c6b2a | 2005-05-27 15:56:38 -0700 | [diff] [blame] | 36 | #define DIFF_SETUP_USE_CACHE 2 |
| 37 | #define DIFF_SETUP_USE_SIZE_CACHE 4 |
Junio C Hamano | ce24067 | 2005-06-03 01:36:43 -0700 | [diff] [blame] | 38 | |
Junio C Hamano | 19feebc | 2005-05-27 15:54:37 -0700 | [diff] [blame] | 39 | extern void diff_setup(int flags); |
Junio C Hamano | 86436c2 | 2005-04-25 18:22:47 -0700 | [diff] [blame] | 40 | |
Junio C Hamano | 6b14d7f | 2005-05-22 10:04:37 -0700 | [diff] [blame] | 41 | #define DIFF_DETECT_RENAME 1 |
| 42 | #define DIFF_DETECT_COPY 2 |
| 43 | |
Junio C Hamano | 367cec1 | 2005-05-27 15:55:28 -0700 | [diff] [blame] | 44 | #define DIFF_PICKAXE_ALL 1 |
Junio C Hamano | f345b0a | 2005-05-30 00:08:37 -0700 | [diff] [blame] | 45 | |
Junio C Hamano | befe863 | 2005-05-29 16:56:13 -0700 | [diff] [blame] | 46 | extern void diffcore_std(const char **paths, |
| 47 | int detect_rename, int rename_score, |
Junio C Hamano | f345b0a | 2005-05-30 00:08:37 -0700 | [diff] [blame] | 48 | const char *pickaxe, int pickaxe_opts, |
Junio C Hamano | af5323e | 2005-05-30 00:09:07 -0700 | [diff] [blame] | 49 | int break_opt, |
Junio C Hamano | f2ce9fd | 2005-06-11 20:57:13 -0700 | [diff] [blame] | 50 | const char *orderfile, const char *filter); |
| 51 | |
| 52 | extern void diffcore_std_no_resolve(const char **paths, |
| 53 | const char *pickaxe, int pickaxe_opts, |
| 54 | const char *orderfile, const char *filter); |
Junio C Hamano | befe863 | 2005-05-29 16:56:13 -0700 | [diff] [blame] | 55 | |
Junio C Hamano | 38c6f78 | 2005-05-21 19:40:36 -0700 | [diff] [blame] | 56 | extern int diff_queue_is_empty(void); |
| 57 | |
Junio C Hamano | 19feebc | 2005-05-27 15:54:37 -0700 | [diff] [blame] | 58 | #define DIFF_FORMAT_HUMAN 0 |
| 59 | #define DIFF_FORMAT_MACHINE 1 |
| 60 | #define DIFF_FORMAT_PATCH 2 |
| 61 | #define DIFF_FORMAT_NO_OUTPUT 3 |
| 62 | |
Junio C Hamano | f2ce9fd | 2005-06-11 20:57:13 -0700 | [diff] [blame] | 63 | extern void diff_flush(int output_style); |
Junio C Hamano | 86436c2 | 2005-04-25 18:22:47 -0700 | [diff] [blame] | 64 | |
| 65 | #endif /* DIFF_H */ |