-
Notifications
You must be signed in to change notification settings - Fork 0
/
design.jft
40 lines (28 loc) · 1.41 KB
/
design.jft
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
% Design of the gedit code assist plugin
% Gcp.Backend
GcpBackend is an abstract class which provides code assist functionality for
a particular set of languages recognised by GtkSourceView. Specific instances
are registered at launch.
Methods:
1) '''Gcp.Document create_document(Gedit.Document)''': creates a
Gcp.Document for a given Gedit.Document. Implementations of
Gcp.Backend are required to create a Gcp.Document (usually inherited
to provide specific functionality). See for example Gcp.C.Document.
2) '''string[] supported_languages {get}''': get a list of supported
language ids that the backend supports.
% Gcp.Document
The Gcp.Document class is a class providing code assistance for a specific
gedit document. This class is subclasses by each backend to provide specific
functionality. In addition, specific interfaces are implemented on the backend
instances (see Gcp.Backend.create_document) that provide specific code
assistance. One such interface is the Gcp.SymbolBrowserSupport interface.
The document class keeps track of unsaved file contents which is automatically
stored in Gcp.Backend.
% Gcp.SymbolBrowserSupport
This interface indicates symbol browser support for a given Gcp.Document.
Methods:
1) '''Gcp.SymbolBrowser symbol_browser {get}''': get a symbol browser
for the document.
% Gcp.C.Backend
The C backend implements support for C, C++ and Objective-C languages using
clang