PageRenderTime 16ms CodeModel.GetById 11ms app.highlight 1ms RepoModel.GetById 1ms app.codeStats 0ms

/src/lib/parse/mini_parser_memory.e

http://github.com/tybor/Liberty
Specman e | 53 lines | 19 code | 4 blank | 30 comment | 0 complexity | 7b6ecaf91a17c85aad67fd5b3ecef289 MD5 | raw file
 1-- This file is part of a Liberty Eiffel library.
 2-- See the full copyright at the end.
 3--
 4deferred class MINI_PARSER_MEMORY
 5   --
 6   -- Stores MINI_PARSER_BUFFER positions, but may be useful to
 7   -- associate extra data (such as line, column)
 8   --
 9
10feature {ANY}
11   memo (buffer: MINI_PARSER_BUFFER): INTEGER is
12         -- returns an identifier that uniquely identifies a buffer index.
13      require
14         buffer /= Void
15      deferred
16      ensure
17         valid_memo(Result, buffer)
18      end
19
20   restore (a_memo: like memo; buffer: MINI_PARSER_BUFFER) is
21         -- restores the buffer index using the given memo
22      require
23         valid_memo(a_memo, buffer)
24         buffer /= Void
25      deferred
26      end
27
28   valid_memo (a_memo: like memo; buffer: MINI_PARSER_BUFFER): BOOLEAN is
29         -- True if the memo represents a valid index in the buffer
30      deferred
31      end
32
33end -- class MINI_PARSER_MEMORY
34--
35-- Copyright (c) 2009 by all the people cited in the AUTHORS file.
36--
37-- Permission is hereby granted, free of charge, to any person obtaining a copy
38-- of this software and associated documentation files (the "Software"), to deal
39-- in the Software without restriction, including without limitation the rights
40-- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
41-- copies of the Software, and to permit persons to whom the Software is
42-- furnished to do so, subject to the following conditions:
43--
44-- The above copyright notice and this permission notice shall be included in
45-- all copies or substantial portions of the Software.
46--
47-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
48-- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
49-- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
50-- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
51-- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
52-- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
53-- THE SOFTWARE.