summaryrefslogtreecommitdiff
path: root/revision.h
diff options
context:
space:
mode:
Diffstat (limited to 'revision.h')
-rw-r--r--revision.h18
1 files changed, 17 insertions, 1 deletions
diff --git a/revision.h b/revision.h
index a14deefc25..36fdf22b29 100644
--- a/revision.h
+++ b/revision.h
@@ -3,6 +3,7 @@
#include "parse-options.h"
#include "grep.h"
+#include "notes.h"
#define SEEN (1u<<0)
#define UNINTERESTING (1u<<1)
@@ -20,6 +21,7 @@
struct rev_info;
struct log_info;
+struct string_list;
struct rev_info {
/* Starting list */
@@ -55,6 +57,7 @@ struct rev_info {
limited:1,
unpacked:1,
boundary:2,
+ count:1,
left_right:1,
rewrite_parents:1,
print_parents:1,
@@ -64,6 +67,7 @@ struct rev_info {
reverse_output_stage:1,
cherry_pick:1,
bisect:1,
+ ancestry_path:1,
first_parent_only:1;
/* Diff flags */
@@ -126,6 +130,13 @@ struct rev_info {
struct reflog_walk_info *reflog_info;
struct decoration children;
struct decoration merge_simplification;
+
+ /* notes-specific options: which refs to show */
+ struct display_notes_opt notes_opt;
+
+ /* commit counts */
+ int count_left;
+ int count_right;
};
#define REV_TREE_SAME 0
@@ -137,8 +148,13 @@ struct rev_info {
typedef void (*show_early_output_fn_t)(struct rev_info *, struct commit_list *);
extern volatile show_early_output_fn_t show_early_output;
+struct setup_revision_opt {
+ const char *def;
+ void (*tweak)(struct rev_info *, struct setup_revision_opt *);
+};
+
extern void init_revisions(struct rev_info *revs, const char *prefix);
-extern int setup_revisions(int argc, const char **argv, struct rev_info *revs, const char *def);
+extern int setup_revisions(int argc, const char **argv, struct rev_info *revs, struct setup_revision_opt *);
extern void parse_revision_opt(struct rev_info *revs, struct parse_opt_ctx_t *ctx,
const struct option *options,
const char * const usagestr[]);