Commit | Line | Data |
---|---|---|
c05676c5 CY |
1 | ;;; getset-cpp.srt --- SRecode templates for C++ class getter/setters. |
2 | ||
114f9c96 | 3 | ;; Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc. |
c05676c5 CY |
4 | |
5 | ;; Author: Eric M. Ludlam <eric@siege-engine.com> | |
6 | ||
7 | ;; This file is part of GNU Emacs. | |
8 | ||
9 | ;; GNU Emacs is free software: you can redistribute it and/or modify | |
10 | ;; it under the terms of the GNU General Public License as published by | |
11 | ;; the Free Software Foundation, either version 3 of the License, or | |
12 | ;; (at your option) any later version. | |
13 | ||
14 | ;; GNU Emacs is distributed in the hope that it will be useful, | |
15 | ;; but WITHOUT ANY WARRANTY; without even the implied warranty of | |
16 | ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
17 | ;; GNU General Public License for more details. | |
18 | ||
19 | ;; You should have received a copy of the GNU General Public License | |
20 | ;; along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. | |
21 | ||
22 | set mode "c++-mode" | |
23 | set application "getset" | |
24 | ||
25 | context declaration | |
26 | ||
27 | template getset-in-class :tag :indent :blank | |
28 | ---- | |
29 | {{>A:classdecl:comment-function-group-start}} | |
30 | {{TYPE}} get{{NICENAME}}() const { | |
31 | return {{NAME}}; | |
32 | } | |
33 | void set{{NICENAME}}({{TYPE}} {{NICENAME}}) { | |
34 | {{NAME}} = {{NICENAME}}; | |
35 | } | |
36 | {{>A:classdecl:comment-function-group-end}} | |
37 | ---- | |
38 | ||
39 | template getset-field :blank :indent | |
40 | ---- | |
41 | {{?TYPE}} f{{?NAME}}; | |
42 | ---- | |
43 | ||
44 | template getset-initializer :indent | |
45 | ---- | |
46 | f{{NAME}}(){{#NOTLAST}},{{/NOTLAST}} | |
47 | ---- | |
48 | ||
49 | ;; end | |
50 |