/src/tools/semantics/code/assertions/liberty_check.e
Specman e | 50 lines | 30 code | 6 blank | 14 comment | 0 complexity | 0448c1f9483c781ec89625b2a9e4d5ad MD5 | raw file
1-- This file is part of Liberty Eiffel. 2-- 3-- Liberty Eiffel is free software: you can redistribute it and/or modify 4-- it under the terms of the GNU General Public License as published by 5-- the Free Software Foundation, version 3 of the License. 6-- 7-- Liberty Eiffel is distributed in the hope that it will be useful, 8-- but WITHOUT ANY WARRANTY; without even the implied warranty of 9-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 10-- GNU General Public License for more details. 11-- 12-- You should have received a copy of the GNU General Public License 13-- along with Liberty Eiffel. If not, see <http://www.gnu.org/licenses/>. 14-- 15class LIBERTY_CHECK 16 17inherit 18 LIBERTY_WRITTEN_ASSERTIONS 19 export {LIBERTY_FEATURE, LIBERTY_ASSERTIONS, LIBERTY_CHECK_INSTRUCTION} 20 specialized_in 21 end 22 23create {LIBERTY_BUILDER_TOOLS, LIBERTY_CHECK} 24 make 25 26feature {} 27 make (a_assertions: like assertions_list) is 28 require 29 a_assertions /= Void 30 do 31 assertions_list := a_assertions 32 ensure 33 assertions_list = a_assertions 34 end 35 36 specialized (a_assertions: like assertions_list): like Current is 37 do 38 create Result.make(a_assertions) 39 end 40 41feature {ANY} 42 accept (v: VISITOR) is 43 local 44 v0: LIBERTY_CHECK_VISITOR 45 do 46 v0 ::= v 47 v0.visit_liberty_check(Current) 48 end 49 50end