HEX
Server: Apache/2.4.41 (Ubuntu)
System: Linux ip-172-31-42-149 5.15.0-1084-aws #91~20.04.1-Ubuntu SMP Fri May 2 07:00:04 UTC 2025 aarch64
User: ubuntu (1000)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: //home/ubuntu/neovim/build/src/nvim/auto/spellfile.c.generated.h
#define DEFINE_FUNC_ATTRIBUTES
#include "nvim/func_attr.h"
#undef DEFINE_FUNC_ATTRIBUTES
static inline int spell_check_magic_string(FILE *const fd) FUNC_ATTR_NONNULL_ALL FUNC_ATTR_WARN_UNUSED_RESULT FUNC_ATTR_ALWAYS_INLINE;
static void tree_count_words(const uint8_t *byts, idx_T *idxs);
static char *read_cnt_string(FILE *fd, int cnt_bytes, int *cntp);
static int read_region_section(FILE *fd, slang_T *lp, int len);
static int read_charflags_section(FILE *fd);
static int read_prefcond_section(FILE *fd, slang_T *lp);
static int read_rep_section(FILE *fd, garray_T *gap, int16_t *first);
static int read_sal_section(FILE *fd, slang_T *slang);
static int read_words_section(FILE *fd, slang_T *lp, int len);
static int read_sofo_section(FILE *fd, slang_T *slang);
static int read_compound(FILE *fd, slang_T *slang, int len);
static int set_sofo(slang_T *lp, const char *from, const char *to);
static void set_sal_first(slang_T *lp);
static int *mb_str2wide(const char *s);
static int spell_read_tree(FILE *fd, uint8_t **bytsp, int *bytsp_len, idx_T **idxsp, _Bool prefixtree, int prefixcnt) FUNC_ATTR_NONNULL_ARG(1, 2, 4);
static idx_T read_tree_node(FILE *fd, uint8_t *byts, idx_T *idxs, int maxidx, idx_T startidx, _Bool prefixtree, int maxprefcondnr);
static void spell_reload_one(char *fname, _Bool added_word);
static afffile_T *spell_read_aff(spellinfo_T *spin, char *fname);
static _Bool is_aff_rule(char **items, int itemcnt, char *rulename, int mincount);
static void aff_process_flags(afffile_T *affile, affentry_T *entry);
static _Bool spell_info_item(char *s);
static unsigned affitem2flag(int flagtype, char *item, char *fname, int lnum);
static unsigned get_affitem(int flagtype, char **pp);
static void process_compflags(spellinfo_T *spin, afffile_T *aff, char *compflags);
static void check_renumber(spellinfo_T *spin);
static _Bool flag_in_afflist(int flagtype, char *afflist, unsigned flag);
static void aff_check_number(int spinval, int affval, char *name);
static void aff_check_string(char *spinval, char *affval, char *name);
static _Bool str_equal(char *s1, char *s2);
static void add_fromto(spellinfo_T *spin, garray_T *gap, char *from, char *to);
static _Bool sal_to_bool(char *s);
static void spell_free_aff(afffile_T *aff);
static int spell_read_dic(spellinfo_T *spin, char *fname, afffile_T *affile);
static int get_affix_flags(afffile_T *affile, char *afflist);
static int get_pfxlist(afffile_T *affile, char *afflist, char *store_afflist);
static void get_compflags(afffile_T *affile, char *afflist, char *store_afflist);
static int store_aff_word(spellinfo_T *spin, char *word, char *afflist, afffile_T *affile, hashtab_T *ht, hashtab_T *xht, int condit, int flags, char *pfxlist, int pfxlen);
static int spell_read_wordfile(spellinfo_T *spin, char *fname);
static void *getroom(spellinfo_T *spin, size_t len, _Bool align) FUNC_ATTR_NONNULL_RET;
static char *getroom_save(spellinfo_T *spin, char *s);
static void free_blocks(sblock_T *bl);
static wordnode_T *wordtree_alloc(spellinfo_T *spin) FUNC_ATTR_NONNULL_RET;
static _Bool valid_spell_word(const char *word, const char *end);
static int store_word(spellinfo_T *spin, char *word, int flags, int region, const char *pfxlist, _Bool need_affix);
static int tree_add_word(spellinfo_T *spin, const char *word, wordnode_T *root, int flags, int region, int affixID);
static wordnode_T *get_wordnode(spellinfo_T *spin);
static int deref_wordnode(spellinfo_T *spin, wordnode_T *node) FUNC_ATTR_NONNULL_ALL;
static void free_wordnode(spellinfo_T *spin, wordnode_T *n) FUNC_ATTR_NONNULL_ALL;
static void wordtree_compress(spellinfo_T *spin, wordnode_T *root, const char *name) FUNC_ATTR_NONNULL_ALL;
static int node_compress(spellinfo_T *spin, wordnode_T *node, hashtab_T *ht, int *tot) FUNC_ATTR_NONNULL_ALL;
static _Bool node_equal(wordnode_T *n1, wordnode_T *n2);
static int rep_compare(const void *s1, const void *s2);
static int write_vim_spell(spellinfo_T *spin, char *fname);
static void clear_node(wordnode_T *node);
static int put_node(FILE *fd, wordnode_T *node, int idx, int regionmask, _Bool prefixtree);
static void spell_make_sugfile(spellinfo_T *spin, char *wfname);
static int sug_filltree(spellinfo_T *spin, slang_T *slang);
static int sug_maketable(spellinfo_T *spin);
static int sug_filltable(spellinfo_T *spin, wordnode_T *node, int startwordnr, garray_T *gap);
static int offset2bytes(int nr, char *buf_in);
static void sug_write(spellinfo_T *spin, char *fname);
static void mkspell(int fcount, char **fnames, _Bool ascii, _Bool over_write, _Bool added_word);
static void spell_message(const spellinfo_T *spin, char *str) FUNC_ATTR_NONNULL_ALL;
static void init_spellfile(void);
static void set_spell_charflags(const char *flags_in, int cnt, const char *fol);
static int set_spell_finish(spelltab_T *new_st);
static int write_spell_prefcond(FILE *fd, garray_T *gap, size_t *fwv);
static void set_map_str(slang_T *lp, const char *map);
#define DEFINE_EMPTY_ATTRIBUTES
#include "nvim/func_attr.h"  // IWYU pragma: export