diff options
author | Josh Rahm <joshuarahm@gmail.com> | 2023-11-30 20:35:25 +0000 |
---|---|---|
committer | Josh Rahm <joshuarahm@gmail.com> | 2023-11-30 20:35:25 +0000 |
commit | 1b7b916b7631ddf73c38e3a0070d64e4636cb2f3 (patch) | |
tree | cd08258054db80bb9a11b1061bb091c70b76926a /src/nvim/undo_defs.h | |
parent | eaa89c11d0f8aefbb512de769c6c82f61a8baca3 (diff) | |
parent | 4a8bf24ac690004aedf5540fa440e788459e5e34 (diff) | |
download | rneovim-aucmd_textputpost.tar.gz rneovim-aucmd_textputpost.tar.bz2 rneovim-aucmd_textputpost.zip |
Merge remote-tracking branch 'upstream/master' into aucmd_textputpostaucmd_textputpost
Diffstat (limited to 'src/nvim/undo_defs.h')
-rw-r--r-- | src/nvim/undo_defs.h | 90 |
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 +}; |