/src/tools/syntax/tree/liberty_ast_exp3.e
Specman e | 46 lines | 26 code | 6 blank | 14 comment | 0 complexity | 0ebf5d719d1bd4bc47b896c63d24be1f 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_AST_EXP3 16 17inherit 18 LIBERTY_AST_EXPRESSION_BINARY[LIBERTY_AST_E3] 19 20create {LIBERTY_NODE_FACTORY} 21 make 22 23feature {LIBERTY_AST_HANDLER} 24 is_and_then: BOOLEAN is 25 do 26 Result := count = 4 27 check 28 Result implies nodes.item(1).name.is_equal(once "KW and") 29 Result implies nodes.item(2).name.is_equal(once "KW then") 30 end 31 ensure 32 Result implies not is_empty 33 end 34 35 is_and: BOOLEAN is 36 do 37 Result := count = 3 38 check 39 Result implies nodes.item(1).name.is_equal(once "KW and") 40 end 41 end 42 43feature {ANY} 44 name: STRING is "e3-exp" 45 46end