package liquidsoap-lang
Liquidsoap language library
Install
Dune Dependency
Authors
Maintainers
Sources
liquidsoap-2.2.5.tar.gz
md5=8e4d35b2595e31ef5e7a96b605382787
sha512=3c8c9738cce1adad3707986527b52aac5e5a70f11f58e4aa3647972752275d72d1649657e46cec6afc4c543a4546cc312d1c9b1a4338f9bd6e41c0a702ec5118
doc/src/liquidsoap-lang/builtins_bool.ml.html
Source file builtins_bool.ml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74
(***************************************************************************** Liquidsoap, a programmable audio stream generator. Copyright 2003-2024 Savonet team This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program 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, fully stated in the COPYING file at the root of the liquidsoap distribution. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA *****************************************************************************) let () = let t = Lang.univ_t ~constraints:[Type.ord_constr] () in let register_op name op = ignore (Lang.add_builtin name ~category:`Bool ~descr:"Comparison of comparable values." [("", t, None, None); ("", t, None, None)] Lang.bool_t (fun p -> let a = Lang.assoc "" 1 p in let b = Lang.assoc "" 2 p in Lang.bool (op (Value.compare a b)))) in register_op "==" (fun c -> c = 0); register_op "!=" (fun c -> c <> 0); register_op "<" (fun c -> c = -1); register_op "<=" (fun c -> c <> 1); register_op ">=" (fun c -> c <> -1); register_op ">" (fun c -> c = 1) let _ = Lang.add_builtin "and" ~category:`Bool ~descr:"Return the conjunction of its arguments" [ ("", Lang.getter_t Lang.bool_t, None, None); ("", Lang.getter_t Lang.bool_t, None, None); ] Lang.bool_t (fun p -> let a = Lang.to_bool_getter (Lang.assoc "" 1 p) in let b = Lang.to_bool_getter (Lang.assoc "" 2 p) in Lang.bool (if a () then b () else false)) let _ = Lang.add_builtin "or" ~category:`Bool ~descr:"Return the disjunction of its arguments" [ ("", Lang.getter_t Lang.bool_t, None, None); ("", Lang.getter_t Lang.bool_t, None, None); ] Lang.bool_t (fun p -> let a = Lang.to_bool_getter (Lang.assoc "" 1 p) in let b = Lang.to_bool_getter (Lang.assoc "" 2 p) in Lang.bool (if a () then true else b ())) let _ = Lang.add_builtin "not" ~category:`Bool ~descr:"Returns the negation of its argument." [("", Lang.bool_t, None, None)] Lang.bool_t (fun p -> Lang.bool (not (Lang.to_bool (List.assoc "" p))))
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>