Skip to content

Commit 3f0346d

Browse files
Linus Arverttaylorr
authored andcommitted
trailer: spread usage of "trailer_block" language
Deprecate the "trailer_info" struct name and replace it with "trailer_block". This is more readable, for two reasons: 1. "trailer_info" on the surface sounds like it's about a single trailer when in reality it is a collection of one or more trailers, and 2. the "*_block" suffix is more informative than "*_info", because it describes a block (or region) of contiguous text which has trailers in it, which has been parsed into the trailer_block structure. Rename the size_t trailer_block_start, trailer_block_end; members of trailer_info to just "start" and "end". Rename the "info" pointer to "trailer_block" because it is more descriptive. Update comments accordingly. Signed-off-by: Linus Arver <[email protected]> Signed-off-by: Taylor Blau <[email protected]>
1 parent ef8ce8f commit 3f0346d

File tree

3 files changed

+76
-74
lines changed

3 files changed

+76
-74
lines changed

builtin/interpret-trailers.c

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -141,8 +141,8 @@ static void interpret_trailers(const struct process_trailer_options *opts,
141141
{
142142
LIST_HEAD(head);
143143
struct strbuf sb = STRBUF_INIT;
144-
struct strbuf trailer_block = STRBUF_INIT;
145-
struct trailer_info *info;
144+
struct strbuf trailer_block_sb = STRBUF_INIT;
145+
struct trailer_block *trailer_block;
146146
FILE *outfile = stdout;
147147

148148
trailer_config_init();
@@ -152,13 +152,13 @@ static void interpret_trailers(const struct process_trailer_options *opts,
152152
if (opts->in_place)
153153
outfile = create_in_place_tempfile(file);
154154

155-
info = parse_trailers(opts, sb.buf, &head);
155+
trailer_block = parse_trailers(opts, sb.buf, &head);
156156

157-
/* Print the lines before the trailers */
157+
/* Print the lines before the trailer block */
158158
if (!opts->only_trailers)
159-
fwrite(sb.buf, 1, trailer_block_start(info), outfile);
159+
fwrite(sb.buf, 1, trailer_block_start(trailer_block), outfile);
160160

161-
if (!opts->only_trailers && !blank_line_before_trailer_block(info))
161+
if (!opts->only_trailers && !blank_line_before_trailer_block(trailer_block))
162162
fprintf(outfile, "\n");
163163

164164

@@ -172,15 +172,16 @@ static void interpret_trailers(const struct process_trailer_options *opts,
172172
}
173173

174174
/* Print trailer block. */
175-
format_trailers(opts, &head, &trailer_block);
175+
format_trailers(opts, &head, &trailer_block_sb);
176176
free_trailers(&head);
177-
fwrite(trailer_block.buf, 1, trailer_block.len, outfile);
178-
strbuf_release(&trailer_block);
177+
fwrite(trailer_block_sb.buf, 1, trailer_block_sb.len, outfile);
178+
strbuf_release(&trailer_block_sb);
179179

180-
/* Print the lines after the trailers as is */
180+
/* Print the lines after the trailer block as is. */
181181
if (!opts->only_trailers)
182-
fwrite(sb.buf + trailer_block_end(info), 1, sb.len - trailer_block_end(info), outfile);
183-
trailer_info_release(info);
182+
fwrite(sb.buf + trailer_block_end(trailer_block), 1,
183+
sb.len - trailer_block_end(trailer_block), outfile);
184+
trailer_block_release(trailer_block);
184185

185186
if (opts->in_place)
186187
if (rename_tempfile(&trailers_tempfile, file))

trailer.c

Lines changed: 48 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -13,19 +13,20 @@
1313
* Copyright (c) 2013, 2014 Christian Couder <[email protected]>
1414
*/
1515

16-
struct trailer_info {
16+
struct trailer_block {
1717
/*
1818
* True if there is a blank line before the location pointed to by
19-
* trailer_block_start.
19+
* "start".
2020
*/
2121
int blank_line_before_trailer;
2222

2323
/*
24-
* Offsets to the trailer block start and end positions in the input
25-
* string. If no trailer block is found, these are both set to the
26-
* "true" end of the input (find_end_of_log_message()).
24+
* The locations of the start and end positions of the trailer block
25+
* found, as offsets from the beginning of the source text from which
26+
* this trailer block was parsed. If no trailer block is found, these
27+
* are both set to 0.
2728
*/
28-
size_t trailer_block_start, trailer_block_end;
29+
size_t start, end;
2930

3031
/*
3132
* Array of trailers found.
@@ -975,16 +976,16 @@ static void unfold_value(struct strbuf *val)
975976
strbuf_release(&out);
976977
}
977978

978-
static struct trailer_info *trailer_info_new(void)
979+
static struct trailer_block *trailer_block_new(void)
979980
{
980-
struct trailer_info *info = xcalloc(1, sizeof(*info));
981-
return info;
981+
struct trailer_block *trailer_block = xcalloc(1, sizeof(*trailer_block));
982+
return trailer_block;
982983
}
983984

984-
static struct trailer_info *trailer_info_get(const struct process_trailer_options *opts,
985-
const char *str)
985+
static struct trailer_block *trailer_block_get(const struct process_trailer_options *opts,
986+
const char *str)
986987
{
987-
struct trailer_info *info = trailer_info_new();
988+
struct trailer_block *trailer_block = trailer_block_new();
988989
size_t end_of_log_message = 0, trailer_block_start = 0;
989990
struct strbuf **trailer_lines, **ptr;
990991
char **trailer_strings = NULL;
@@ -1017,34 +1018,34 @@ static struct trailer_info *trailer_info_get(const struct process_trailer_option
10171018
}
10181019
strbuf_list_free(trailer_lines);
10191020

1020-
info->blank_line_before_trailer = ends_with_blank_line(str,
1021-
trailer_block_start);
1022-
info->trailer_block_start = trailer_block_start;
1023-
info->trailer_block_end = end_of_log_message;
1024-
info->trailers = trailer_strings;
1025-
info->trailer_nr = nr;
1021+
trailer_block->blank_line_before_trailer = ends_with_blank_line(str,
1022+
trailer_block_start);
1023+
trailer_block->start = trailer_block_start;
1024+
trailer_block->end = end_of_log_message;
1025+
trailer_block->trailers = trailer_strings;
1026+
trailer_block->trailer_nr = nr;
10261027

1027-
return info;
1028+
return trailer_block;
10281029
}
10291030

10301031
/*
1031-
* Parse trailers in "str", populating the trailer info and "trailer_objects"
1032+
* Parse trailers in "str", populating the trailer_block and "trailer_objects"
10321033
* linked list structure.
10331034
*/
1034-
struct trailer_info *parse_trailers(const struct process_trailer_options *opts,
1035-
const char *str,
1036-
struct list_head *trailer_objects)
1035+
struct trailer_block *parse_trailers(const struct process_trailer_options *opts,
1036+
const char *str,
1037+
struct list_head *trailer_objects)
10371038
{
1038-
struct trailer_info *info;
1039+
struct trailer_block *trailer_block;
10391040
struct strbuf tok = STRBUF_INIT;
10401041
struct strbuf val = STRBUF_INIT;
10411042
size_t i;
10421043

1043-
info = trailer_info_get(opts, str);
1044+
trailer_block = trailer_block_get(opts, str);
10441045

1045-
for (i = 0; i < info->trailer_nr; i++) {
1046+
for (i = 0; i < trailer_block->trailer_nr; i++) {
10461047
int separator_pos;
1047-
char *trailer = info->trailers[i];
1048+
char *trailer = trailer_block->trailers[i];
10481049
if (starts_with(trailer, comment_line_str))
10491050
continue;
10501051
separator_pos = find_separator(trailer, separators);
@@ -1065,7 +1066,7 @@ struct trailer_info *parse_trailers(const struct process_trailer_options *opts,
10651066
}
10661067
}
10671068

1068-
return info;
1069+
return trailer_block;
10691070
}
10701071

10711072
void free_trailers(struct list_head *trailers)
@@ -1077,28 +1078,28 @@ void free_trailers(struct list_head *trailers)
10771078
}
10781079
}
10791080

1080-
size_t trailer_block_start(struct trailer_info *info)
1081+
size_t trailer_block_start(struct trailer_block *trailer_block)
10811082
{
1082-
return info->trailer_block_start;
1083+
return trailer_block->start;
10831084
}
10841085

1085-
size_t trailer_block_end(struct trailer_info *info)
1086+
size_t trailer_block_end(struct trailer_block *trailer_block)
10861087
{
1087-
return info->trailer_block_end;
1088+
return trailer_block->end;
10881089
}
10891090

1090-
int blank_line_before_trailer_block(struct trailer_info *info)
1091+
int blank_line_before_trailer_block(struct trailer_block *trailer_block)
10911092
{
1092-
return info->blank_line_before_trailer;
1093+
return trailer_block->blank_line_before_trailer;
10931094
}
10941095

1095-
void trailer_info_release(struct trailer_info *info)
1096+
void trailer_block_release(struct trailer_block *trailer_block)
10961097
{
10971098
size_t i;
1098-
for (i = 0; i < info->trailer_nr; i++)
1099-
free(info->trailers[i]);
1100-
free(info->trailers);
1101-
free(info);
1099+
for (i = 0; i < trailer_block->trailer_nr; i++)
1100+
free(trailer_block->trailers[i]);
1101+
free(trailer_block->trailers);
1102+
free(trailer_block);
11021103
}
11031104

11041105
void format_trailers(const struct process_trailer_options *opts,
@@ -1166,19 +1167,19 @@ void format_trailers_from_commit(const struct process_trailer_options *opts,
11661167
struct strbuf *out)
11671168
{
11681169
LIST_HEAD(trailer_objects);
1169-
struct trailer_info *info = parse_trailers(opts, msg, &trailer_objects);
1170+
struct trailer_block *trailer_block = parse_trailers(opts, msg, &trailer_objects);
11701171

11711172
/* If we want the whole block untouched, we can take the fast path. */
11721173
if (!opts->only_trailers && !opts->unfold && !opts->filter &&
11731174
!opts->separator && !opts->key_only && !opts->value_only &&
11741175
!opts->key_value_separator) {
1175-
strbuf_add(out, msg + info->trailer_block_start,
1176-
info->trailer_block_end - info->trailer_block_start);
1176+
strbuf_add(out, msg + trailer_block->start,
1177+
trailer_block->end - trailer_block->start);
11771178
} else
11781179
format_trailers(opts, &trailer_objects, out);
11791180

11801181
free_trailers(&trailer_objects);
1181-
trailer_info_release(info);
1182+
trailer_block_release(trailer_block);
11821183
}
11831184

11841185
void trailer_iterator_init(struct trailer_iterator *iter, const char *msg)
@@ -1187,14 +1188,14 @@ void trailer_iterator_init(struct trailer_iterator *iter, const char *msg)
11871188
strbuf_init(&iter->key, 0);
11881189
strbuf_init(&iter->val, 0);
11891190
opts.no_divider = 1;
1190-
iter->internal.info = trailer_info_get(&opts, msg);
1191+
iter->internal.trailer_block = trailer_block_get(&opts, msg);
11911192
iter->internal.cur = 0;
11921193
}
11931194

11941195
int trailer_iterator_advance(struct trailer_iterator *iter)
11951196
{
1196-
if (iter->internal.cur < iter->internal.info->trailer_nr) {
1197-
char *line = iter->internal.info->trailers[iter->internal.cur++];
1197+
if (iter->internal.cur < iter->internal.trailer_block->trailer_nr) {
1198+
char *line = iter->internal.trailer_block->trailers[iter->internal.cur++];
11981199
int separator_pos = find_separator(line, separators);
11991200

12001201
iter->raw = line;
@@ -1211,7 +1212,7 @@ int trailer_iterator_advance(struct trailer_iterator *iter)
12111212

12121213
void trailer_iterator_release(struct trailer_iterator *iter)
12131214
{
1214-
trailer_info_release(iter->internal.info);
1215+
trailer_block_release(iter->internal.trailer_block);
12151216
strbuf_release(&iter->val);
12161217
strbuf_release(&iter->key);
12171218
}

trailer.h

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
#include "list.h"
55
#include "strbuf.h"
66

7-
struct trailer_info;
7+
struct trailer_block;
88
struct strvec;
99

1010
enum trailer_where {
@@ -72,12 +72,12 @@ void process_trailers_lists(struct list_head *head,
7272
struct list_head *arg_head);
7373

7474
/*
75-
* Given some input string "str", return a pointer to an opaque trailer_info
75+
* Given some input string "str", return a pointer to an opaque trailer_block
7676
* structure. Also populate the trailer_objects list with parsed trailer
7777
* objects. Internally this calls trailer_info_get() to get the opaque pointer,
7878
* but does some extra work to populate the trailer_objects linked list.
7979
*
80-
* The opaque trailer_info pointer can be used to check the position of the
80+
* The opaque trailer_block pointer can be used to check the position of the
8181
* trailer block as offsets relative to the beginning of "str" in
8282
* trailer_block_start() and trailer_block_end().
8383
* blank_line_before_trailer_block() returns 1 if there is a blank line just
@@ -89,46 +89,46 @@ void process_trailers_lists(struct list_head *head,
8989
* For iterating through the parsed trailer block (if you don't care about the
9090
* position of the trailer block itself in the context of the larger string text
9191
* from which it was parsed), please see trailer_iterator_init() which uses the
92-
* trailer_info struct internally.
92+
* trailer_block struct internally.
9393
*
9494
* Lastly, callers should call trailer_info_release() when they are done using
9595
* the opaque pointer.
9696
*
97-
* NOTE: Callers should treat both trailer_info and trailer_objects as
98-
* read-only items, because there is some overlap between the two (trailer_info
97+
* NOTE: Callers should treat both trailer_block and trailer_objects as
98+
* read-only items, because there is some overlap between the two (trailer_block
9999
* has "char **trailers" string array, and trailer_objects will have the same
100100
* data but as a linked list of trailer_item objects). This API does not perform
101101
* any synchronization between the two. In the future we should be able to
102102
* reduce the duplication and use just the linked list.
103103
*/
104-
struct trailer_info *parse_trailers(const struct process_trailer_options *,
105-
const char *str,
106-
struct list_head *trailer_objects);
104+
struct trailer_block *parse_trailers(const struct process_trailer_options *,
105+
const char *str,
106+
struct list_head *trailer_objects);
107107

108108
/*
109109
* Return the offset of the start of the trailer block. That is, 0 is the start
110110
* of the input ("str" in parse_trailers()) and some other positive number
111111
* indicates how many bytes we have to skip over before we get to the beginning
112112
* of the trailer block.
113113
*/
114-
size_t trailer_block_start(struct trailer_info *);
114+
size_t trailer_block_start(struct trailer_block *);
115115

116116
/*
117117
* Return the end of the trailer block, again relative to the start of the
118118
* input.
119119
*/
120-
size_t trailer_block_end(struct trailer_info *);
120+
size_t trailer_block_end(struct trailer_block *);
121121

122122
/*
123123
* Return 1 if the trailer block had an extra newline (blank line) just before
124124
* it.
125125
*/
126-
int blank_line_before_trailer_block(struct trailer_info *);
126+
int blank_line_before_trailer_block(struct trailer_block *);
127127

128128
/*
129-
* Free trailer_info struct.
129+
* Free trailer_block struct.
130130
*/
131-
void trailer_info_release(struct trailer_info *info);
131+
void trailer_block_release(struct trailer_block *);
132132

133133
void trailer_config_init(void);
134134
void format_trailers(const struct process_trailer_options *,
@@ -167,7 +167,7 @@ struct trailer_iterator {
167167

168168
/* private */
169169
struct {
170-
struct trailer_info *info;
170+
struct trailer_block *trailer_block;
171171
size_t cur;
172172
} internal;
173173
};

0 commit comments

Comments
 (0)