aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/undo_defs.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/nvim/undo_defs.h')
-rw-r--r--src/nvim/undo_defs.h90
1 files changed, 46 insertions, 44 deletions
diff --git a/src/nvim/undo_defs.h b/src/nvim/undo_defs.h
index 7c065c540b..0b78ea543f 100644
--- a/src/nvim/undo_defs.h
+++ b/src/nvim/undo_defs.h
@@ -1,34 +1,36 @@
-#ifndef NVIM_UNDO_DEFS_H
-#define NVIM_UNDO_DEFS_H
+#pragma once
-#include <time.h> // for time_t
+#include <time.h>
#include "nvim/extmark_defs.h"
#include "nvim/mark_defs.h"
-#include "nvim/pos.h"
+#include "nvim/pos_defs.h"
+
+/// Size in bytes of the hash used in the undo file.
+enum { UNDO_HASH_SIZE = 32, };
typedef struct u_header u_header_T;
-// Structure to store info about the Visual area.
+/// Structure to store info about the Visual area.
typedef struct {
- pos_T vi_start; // start pos of last VIsual
- pos_T vi_end; // end position of last VIsual
- int vi_mode; // VIsual_mode of last VIsual
- colnr_T vi_curswant; // MAXCOL from w_curswant
+ pos_T vi_start; ///< start pos of last VIsual
+ pos_T vi_end; ///< end position of last VIsual
+ int vi_mode; ///< VIsual_mode of last VIsual
+ colnr_T vi_curswant; ///< MAXCOL from w_curswant
} visualinfo_T;
#include "nvim/buffer_defs.h"
typedef struct u_entry u_entry_T;
struct u_entry {
- u_entry_T *ue_next; // pointer to next entry in list
- linenr_T ue_top; // number of line above undo block
- linenr_T ue_bot; // number of line below undo block
- linenr_T ue_lcount; // linecount when u_save called
- char **ue_array; // array of lines in undo block
- long ue_size; // number of lines in ue_array
+ u_entry_T *ue_next; ///< pointer to next entry in list
+ linenr_T ue_top; ///< number of line above undo block
+ linenr_T ue_bot; ///< number of line below undo block
+ linenr_T ue_lcount; ///< linecount when u_save called
+ char **ue_array; ///< array of lines in undo block
+ linenr_T ue_size; ///< number of lines in ue_array
#ifdef U_DEBUG
- int ue_magic; // magic number to check allocation
+ int ue_magic; ///< magic number to check allocation
#endif
};
@@ -36,42 +38,42 @@ struct u_header {
// The following have a pointer and a number. The number is used when reading
// the undo file in u_read_undo()
union {
- u_header_T *ptr; // pointer to next undo header in list
- long seq;
+ u_header_T *ptr; ///< pointer to next undo header in list
+ int seq;
} uh_next;
union {
- u_header_T *ptr; // pointer to previous header in list
- long seq;
+ u_header_T *ptr; ///< pointer to previous header in list
+ int seq;
} uh_prev;
union {
- u_header_T *ptr; // pointer to next header for alt. redo
- long seq;
+ u_header_T *ptr; ///< pointer to next header for alt. redo
+ int seq;
} uh_alt_next;
union {
- u_header_T *ptr; // pointer to previous header for alt. redo
- long seq;
+ u_header_T *ptr; ///< pointer to previous header for alt. redo
+ int seq;
} uh_alt_prev;
- long uh_seq; // sequence number, higher == newer undo
- int uh_walk; // used by undo_time()
- u_entry_T *uh_entry; // pointer to first entry
- u_entry_T *uh_getbot_entry; // pointer to where ue_bot must be set
- pos_T uh_cursor; // cursor position before saving
- long uh_cursor_vcol;
- int uh_flags; // see below
- fmark_T uh_namedm[NMARKS]; // marks before undo/after redo
- extmark_undo_vec_t uh_extmark; // info to move extmarks
- visualinfo_T uh_visual; // Visual areas before undo/after redo
- time_t uh_time; // timestamp when the change was made
- long uh_save_nr; // set when the file was saved after the
- // changes in this block
+ int uh_seq; ///< sequence number, higher == newer undo
+ int uh_walk; ///< used by undo_time()
+ u_entry_T *uh_entry; ///< pointer to first entry
+ u_entry_T *uh_getbot_entry; ///< pointer to where ue_bot must be set
+ pos_T uh_cursor; ///< cursor position before saving
+ colnr_T uh_cursor_vcol;
+ int uh_flags; ///< see below
+ fmark_T uh_namedm[NMARKS]; ///< marks before undo/after redo
+ extmark_undo_vec_t uh_extmark; ///< info to move extmarks
+ visualinfo_T uh_visual; ///< Visual areas before undo/after redo
+ time_t uh_time; ///< timestamp when the change was made
+ int uh_save_nr; ///< set when the file was saved after the
+ ///< changes in this block
#ifdef U_DEBUG
- int uh_magic; // magic number to check allocation
+ int uh_magic; ///< magic number to check allocation
#endif
};
-// values for uh_flags
-#define UH_CHANGED 0x01 // b_changed flag before undo/after redo
-#define UH_EMPTYBUF 0x02 // buffer was empty
-#define UH_RELOAD 0x04 // buffer was reloaded
-
-#endif // NVIM_UNDO_DEFS_H
+/// values for uh_flags
+enum {
+ UH_CHANGED = 0x01, ///< b_changed flag before undo/after redo
+ UH_EMPTYBUF = 0x02, ///< buffer was empty
+ UH_RELOAD = 0x04, ///< buffer was reloaded
+};