(***********************************************************************) (* *) (* Applied Type System *) (* *) (***********************************************************************) (* ** ATS/Postiats - Unleashing the Potential of Types! ** Copyright (C) 2010-2015 Hongwei Xi, ATS Trustful Software, Inc. ** All rights reserved ** ** ATS is free software; you can redistribute it and/or modify it under ** the terms of the GNU GENERAL PUBLIC LICENSE (GPL) as published by the ** Free Software Foundation; either version 3, or (at your option) any ** later version. ** ** ATS is distributed in the hope that it will be useful, but WITHOUT ANY ** WARRANTY; without even the implied warranty of MERCHANTABILITY or ** FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ** for more details. ** ** You should have received a copy of the GNU General Public License ** along with ATS; see the file COPYING. If not, please write to the ** Free Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA ** 02110-1301, USA. *) (* ****** ****** *) (* Author: Hongwei Xi *) (* Authoremail: hwxi AT cs DOT bu DOT edu *) (* Start time: June, 2012 *) (* ****** ****** *) (* ** Source: ** $PATSHOME/prelude/SATS/CODEGEN/intrange.atxt ** Time of generation: Thu Jan 11 11:00:06 2018 *) (* ****** ****** *) // // HX-2013-04: // intrange (l, r) is for integers i satisfying l <= i < r // (* ****** ****** *) // fun intrange_forall(l : int, r : int) : bool fun intrange_forall$pred(i : int) :<> bool // (* ****** ****** *) // fun intrange_foreach(l : int, r : int) : (int) fun {env:vt0p} intrange_foreach_env ( l : int , r : int , env : &(env) >> _ ) : int // fun {env:vt0p} intrange_foreach$cont (i : int, env : &env) : bool fun {env:vt0p} intrange_foreach$fwork (i : int, env : &(env) >> _) : void // (* ****** ****** *) // fun intrange_rforeach(l : int, r : int) : (int) fun {env:vt0p} intrange_rforeach_env ( l : int , r : int , env : &(env) >> _ ) : int // fun {env:vt0p} intrange_rforeach$cont (i : int, env : &env) : bool fun {env:vt0p} intrange_rforeach$fwork (i : int, env : &(env) >> _) : void // (* ****** ****** *) // fun intrange2_foreach(l1 : int, r1 : int, l2 : int, r2 : int) : void // fun {env:vt0p} intrange2_foreach_env ( l1 : int , r1 : int , l2 : int , r2 : int , env : &(env) >> _ ) : void // fun {env:vt0p} intrange2_foreach$fwork ( i : int , j : int , env : &env >> _ ) : void // (* ****** ****** *) // fun streamize_intrange_l(m : int) : stream_vt(int) fun streamize_intrange_0r(n : int) : stream_vt(int) fun streamize_intrange_lr(m : int, n : int) : stream_vt(int) // (* ****** ****** *) (* end of [intrange.sats] *)