1#ifndef DEFINE_FUNC_ATTRIBUTES
2# define DEFINE_FUNC_ATTRIBUTES
3#endif
4#include "nvim/func_attr.h"
5#undef DEFINE_FUNC_ATTRIBUTES
6int init_chartab(void);
7int buf_init_chartab(buf_T *buf, int global);
8void trans_characters(char_u *buf, int bufsize);
9size_t transstr_len(const char *const s) FUNC_ATTR_WARN_UNUSED_RESULT FUNC_ATTR_PURE;
10size_t transstr_buf(const char *const s, char *const buf, const size_t len) FUNC_ATTR_NONNULL_ALL;
11char *transstr(const char *const s) FUNC_ATTR_NONNULL_RET;
12char_u *str_foldcase(char_u *str, int orglen, char_u *buf, int buflen) FUNC_ATTR_NONNULL_RET;
13char_u *transchar(int c);
14char_u *transchar_byte(const int c) FUNC_ATTR_WARN_UNUSED_RESULT;
15void transchar_nonprint(char_u *buf, int c);
16size_t transchar_hex(char *const buf, const int c) FUNC_ATTR_NONNULL_ALL;
17int byte2cells(int b);
18int char2cells(int c);
19int ptr2cells(const char_u *p);
20int vim_strsize(char_u *s);
21int vim_strnsize(char_u *s, int len);
22int chartabsize(char_u *p, colnr_T col);
23int linetabsize(char_u *s);
24int linetabsize_col(int startcol, char_u *s);
25unsigned int win_linetabsize(win_T *wp, char_u *line, colnr_T len);
26_Bool vim_isIDc(int c) FUNC_ATTR_PURE FUNC_ATTR_WARN_UNUSED_RESULT;
27_Bool vim_iswordc(const int c) FUNC_ATTR_PURE FUNC_ATTR_WARN_UNUSED_RESULT;
28_Bool vim_iswordc_tab(const int c, const uint64_t *const chartab) FUNC_ATTR_PURE FUNC_ATTR_WARN_UNUSED_RESULT FUNC_ATTR_NONNULL_ALL;
29_Bool vim_iswordc_buf(const int c, buf_T *const buf) FUNC_ATTR_PURE FUNC_ATTR_WARN_UNUSED_RESULT FUNC_ATTR_NONNULL_ARG(2);
30_Bool vim_iswordp(const char_u *const p) FUNC_ATTR_PURE FUNC_ATTR_WARN_UNUSED_RESULT FUNC_ATTR_NONNULL_ALL;
31_Bool vim_iswordp_buf(const char_u *const p, buf_T *const buf) FUNC_ATTR_PURE FUNC_ATTR_WARN_UNUSED_RESULT FUNC_ATTR_NONNULL_ALL;
32_Bool vim_isfilec(int c) FUNC_ATTR_PURE FUNC_ATTR_WARN_UNUSED_RESULT;
33_Bool vim_isfilec_or_wc(int c) FUNC_ATTR_PURE FUNC_ATTR_WARN_UNUSED_RESULT;
34_Bool vim_isprintc(int c) FUNC_ATTR_PURE FUNC_ATTR_WARN_UNUSED_RESULT;
35_Bool vim_isprintc_strict(int c) FUNC_ATTR_PURE FUNC_ATTR_WARN_UNUSED_RESULT;
36int lbr_chartabsize(char_u *line, unsigned char *s, colnr_T col);
37int lbr_chartabsize_adv(char_u *line, char_u **s, colnr_T col);
38int win_lbr_chartabsize(win_T *wp, char_u *line, char_u *s, colnr_T col, int *headp);
39_Bool in_win_border(win_T *wp, colnr_T vcol) FUNC_ATTR_PURE FUNC_ATTR_WARN_UNUSED_RESULT FUNC_ATTR_NONNULL_ARG(1);
40void getvcol(win_T *wp, pos_T *pos, colnr_T *start, colnr_T *cursor, colnr_T *end);
41colnr_T getvcol_nolist(pos_T *posp);
42void getvvcol(win_T *wp, pos_T *pos, colnr_T *start, colnr_T *cursor, colnr_T *end);
43void getvcols(win_T *wp, pos_T *pos1, pos_T *pos2, colnr_T *left, colnr_T *right);
44char_u *skipwhite(const char_u *q) FUNC_ATTR_PURE FUNC_ATTR_WARN_UNUSED_RESULT FUNC_ATTR_NONNULL_ALL FUNC_ATTR_NONNULL_RET;
45intptr_t getwhitecols_curline(void);
46intptr_t getwhitecols(const char_u *p);
47char_u *skipdigits(const char_u *q) FUNC_ATTR_PURE FUNC_ATTR_WARN_UNUSED_RESULT FUNC_ATTR_NONNULL_ALL FUNC_ATTR_NONNULL_RET;
48const char *skipbin(const char *q) FUNC_ATTR_PURE FUNC_ATTR_NONNULL_ALL FUNC_ATTR_NONNULL_RET;
49char_u *skiphex(char_u *q);
50char_u *skiptodigit(char_u *q);
51const char *skiptobin(const char *q) FUNC_ATTR_PURE FUNC_ATTR_NONNULL_ALL FUNC_ATTR_NONNULL_RET;
52char_u *skiptohex(char_u *q);
53char_u *skiptowhite(const char_u *p);
54char_u *skiptowhite_esc(char_u *p);
55_Bool try_getdigits(char_u **pp, intmax_t *nr);
56intmax_t getdigits(char_u **pp, _Bool strict, intmax_t def);
57int getdigits_int(char_u **pp, _Bool strict, int def);
58long getdigits_long(char_u **pp, _Bool strict, long def);
59_Bool vim_isblankline(char_u *lbuf);
60void vim_str2nr(const char_u *const start, int *const prep, int *const len, const int what, varnumber_T *const nptr, uvarnumber_T *const unptr, const int maxlen) FUNC_ATTR_NONNULL_ARG(1);
61int hex2nr(int c);
62_Bool rem_backslash(const char_u *str) FUNC_ATTR_PURE FUNC_ATTR_WARN_UNUSED_RESULT FUNC_ATTR_NONNULL_ALL;
63void backslash_halve(char_u *p);
64char_u *backslash_halve_save(const char_u *p) FUNC_ATTR_NONNULL_ALL FUNC_ATTR_NONNULL_RET;
65#include "nvim/func_attr.h"
66