Make graph_next_line() available in the graph.h API

In order to successfully use the graph API from a context other than the
stdout/command-line scenario (where the graph_show_* functions are
suitable), we need direct access to graph_next_line(), to drive the
graph drawing process.

Signed-off-by: Johan Herland <johan@herland.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Johan Herland 2010-07-13 23:23:38 +02:00 коммит произвёл Junio C Hamano
Родитель 449aeb10d5
Коммит 6bdc17d9a6
2 изменённых файлов: 12 добавлений и 12 удалений

13
graph.c
Просмотреть файл

@ -7,17 +7,6 @@
/* Internal API */ /* Internal API */
/*
* Output the next line for a graph.
* This formats the next graph line into the specified strbuf. It is not
* terminated with a newline.
*
* Returns 1 if the line includes the current commit, and 0 otherwise.
* graph_next_line() will return 1 exactly once for each time
* graph_update() is called.
*/
static int graph_next_line(struct git_graph *graph, struct strbuf *sb);
/* /*
* Output a padding line in the graph. * Output a padding line in the graph.
* This is similar to graph_next_line(). However, it is guaranteed to * This is similar to graph_next_line(). However, it is guaranteed to
@ -1143,7 +1132,7 @@ static void graph_output_collapsing_line(struct git_graph *graph, struct strbuf
graph_update_state(graph, GRAPH_PADDING); graph_update_state(graph, GRAPH_PADDING);
} }
static int graph_next_line(struct git_graph *graph, struct strbuf *sb) int graph_next_line(struct git_graph *graph, struct strbuf *sb)
{ {
switch (graph->state) { switch (graph->state) {
case GRAPH_PADDING: case GRAPH_PADDING:

11
graph.h
Просмотреть файл

@ -32,6 +32,17 @@ void graph_update(struct git_graph *graph, struct commit *commit);
*/ */
int graph_is_commit_finished(struct git_graph const *graph); int graph_is_commit_finished(struct git_graph const *graph);
/*
* Output the next line for a graph.
* This formats the next graph line into the specified strbuf. It is not
* terminated with a newline.
*
* Returns 1 if the line includes the current commit, and 0 otherwise.
* graph_next_line() will return 1 exactly once for each time
* graph_update() is called.
*/
int graph_next_line(struct git_graph *graph, struct strbuf *sb);
/* /*
* graph_show_*: helper functions for printing to stdout * graph_show_*: helper functions for printing to stdout