Merge branch 'rs/nth-switch-code-simplification'
[git/git.git] / vcs-svn / fast_export.h
CommitLineData
0009d350
RJ
1#ifndef FAST_EXPORT_H
2#define FAST_EXPORT_H
c0e6c23d 3
195b7ca6 4struct strbuf;
723b7a27 5struct line_buffer;
e5e45ca1 6
41529bbc
DB
7void fast_export_init(int fd);
8void fast_export_deinit(void);
41529bbc 9
03087971
DB
10void fast_export_delete(const char *path);
11void fast_export_modify(const char *path, uint32_t mode, const char *dataref);
3c23953f 12void fast_export_note(const char *committish, const char *dataref);
a9a55613 13void fast_export_begin_note(uint32_t revision, const char *author,
dddbad72 14 const char *log, timestamp_t timestamp, const char *note_ref);
9ecfa8ae 15void fast_export_begin_commit(uint32_t revision, const char *author,
8e43a1d0 16 const struct strbuf *log, const char *uuid,const char *url,
dddbad72 17 timestamp_t timestamp, const char *local_ref);
723b7a27 18void fast_export_end_commit(uint32_t revision);
2d54b9ea 19void fast_export_data(uint32_t mode, off_t len, struct line_buffer *input);
3c23953f 20void fast_export_buf_to_data(const struct strbuf *data);
7a75e661
DB
21void fast_export_blob_delta(uint32_t mode,
22 uint32_t old_mode, const char *old_data,
2d54b9ea 23 off_t len, struct line_buffer *input);
723b7a27
JN
24
25/* If there is no such file at that rev, returns -1, errno == ENOENT. */
03087971 26int fast_export_ls_rev(uint32_t rev, const char *path,
723b7a27 27 uint32_t *mode_out, struct strbuf *dataref_out);
03087971 28int fast_export_ls(const char *path,
723b7a27 29 uint32_t *mode_out, struct strbuf *dataref_out);
c0e6c23d 30
b8f43b12
JN
31void fast_export_copy(uint32_t revision, const char *src, const char *dst);
32const char *fast_export_read_path(const char *path, uint32_t *mode_out);
33
c0e6c23d 34#endif