1#ifndef DEFINE_FUNC_ATTRIBUTES
2# define DEFINE_FUNC_ATTRIBUTES
3#endif
4#include "nvim/func_attr.h"
5#undef DEFINE_FUNC_ATTRIBUTES
6void copyFoldingState(win_T *wp_from, win_T *wp_to);
7int hasAnyFolding(win_T *win);
8_Bool hasFolding(linenr_T lnum, linenr_T *firstp, linenr_T *lastp);
9_Bool hasFoldingWin(win_T *const win, const linenr_T lnum, linenr_T *const firstp, linenr_T *const lastp, const _Bool cache, foldinfo_T *const infop );
10int foldLevel(linenr_T lnum);
11_Bool lineFolded(win_T *const win, const linenr_T lnum);
12long foldedCount(win_T *win, linenr_T lnum, foldinfo_T *infop);
13int foldmethodIsManual(win_T *wp);
14int foldmethodIsIndent(win_T *wp);
15int foldmethodIsExpr(win_T *wp);
16int foldmethodIsMarker(win_T *wp);
17int foldmethodIsSyntax(win_T *wp);
18int foldmethodIsDiff(win_T *wp);
19void closeFold(linenr_T lnum, long count);
20void closeFoldRecurse(linenr_T lnum);
21void opFoldRange(linenr_T first, linenr_T last, int opening, int recurse, int had_visual );
22void openFold(linenr_T lnum, long count);
23void openFoldRecurse(linenr_T lnum);
24void foldOpenCursor(void);
25void newFoldLevel(void);
26void foldCheckClose(void);
27int foldManualAllowed(int create);
28void foldCreate(linenr_T start, linenr_T end);
29void deleteFold(const linenr_T start, const linenr_T end, const int recursive, const _Bool had_visual );
30void clearFolding(win_T *win);
31void foldUpdate(win_T *wp, linenr_T top, linenr_T bot);
32void foldUpdateAfterInsert(void);
33void foldUpdateAll(win_T *win);
34int foldMoveTo(const _Bool updown, const int dir, const long count );
35void foldInitWin(win_T *new_win);
36int find_wl_entry(win_T *win, linenr_T lnum);
37void foldAdjustVisual(void);
38void foldAdjustCursor(void);
39void cloneFoldGrowArray(garray_T *from, garray_T *to);
40void deleteFoldRecurse(garray_T *gap);
41void foldMarkAdjust(win_T *wp, linenr_T line1, linenr_T line2, long amount, long amount_after);
42int getDeepestNesting(void);
43char_u *get_foldtext(win_T *wp, linenr_T lnum, linenr_T lnume, foldinfo_T *foldinfo, char_u *buf) FUNC_ATTR_NONNULL_ARG(1);
44void foldtext_cleanup(char_u *str);
45void foldMoveRange(garray_T *gap, const linenr_T line1, const linenr_T line2, const linenr_T dest);
46int put_folds(FILE *fd, win_T *wp);
47#include "nvim/func_attr.h"
48