/src/tools/semantics/code/assertions/liberty_require.e
Specman e | 47 lines | 27 code | 6 blank | 14 comment | 0 complexity | 534b49a19b772a0fdbbfb59c36c137b3 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_REQUIRE 16 17inherit 18 LIBERTY_WRITTEN_ASSERTIONS 19 20create {LIBERTY_BUILDER_TOOLS, LIBERTY_REQUIRE} 21 make 22 23feature {} 24 make (a_assertions: like assertions_list) is 25 require 26 a_assertions /= Void 27 do 28 assertions_list := a_assertions 29 ensure 30 assertions_list = a_assertions 31 end 32 33 specialized (a_assertions: like assertions_list): like Current is 34 do 35 create Result.make(a_assertions) 36 end 37 38feature {ANY} 39 accept (v: VISITOR) is 40 local 41 v0: LIBERTY_REQUIRE_VISITOR 42 do 43 v0 ::= v 44 v0.visit_liberty_require(Current) 45 end 46 47end