1// Scintilla source code edit control
2/** @file Accessor.h
3 ** Interfaces between Scintilla and lexers.
4 **/
5// Copyright 1998-2010 by Neil Hodgson <neilh@scintilla.org>
6// The License.txt file describes the conditions under which this software may be distributed.
7
8#ifndef ACCESSOR_H
9#define ACCESSOR_H
10
11namespace Lexilla {
12
13enum { wsSpace=1, wsTab=2, wsSpaceTab=4, wsInconsistent=8 };
14
15class Accessor;
16class WordList;
17class PropSetSimple;
18
19typedef bool (*PFNIsCommentLeader)(Accessor &styler, Sci_Position pos, Sci_Position len);
20
21class Accessor : public LexAccessor {
22public:
23 PropSetSimple *pprops;
24 Accessor(Scintilla::IDocument *pAccess_, PropSetSimple *pprops_);
25 int GetPropertyInt(std::string_view key, int defaultValue=0) const;
26 int IndentAmount(Sci_Position line, int *flags, PFNIsCommentLeader pfnIsCommentLeader = nullptr);
27};
28
29}
30
31#endif
32