BoolexprUtils

Scripts

9 years
edited 8 years
True and False BooleanExpressions

Credits goes to Vexorian for the first idea.


Vjass version
Code (jass) Select
1
library BoolexprUtils
2
3
    globals
4
        boolexpr BOOLEXPR_TRUE
5
        boolexpr BOOLEXPR_FALSE
6
    endglobals
7
8
    private module Init
9
10
        private static method filterTrue takes nothing returns boolean
11
            return true
12
        endmethod
13
14
        private static method filterFalse takes nothing returns boolean
15
            return false
16
        endmethod
17
18
        private static method onInit takes nothing returns nothing
19
            set BOOLEXPR_TRUE = Filter(function thistype.filterTrue)
20
            set BOOLEXPR_TRUE = Filter(function thistype.filterFalse)
21
        endmethod
22
23
    endmodule
24
25
    private struct S extends array
26
        implement Init
27
    endstruct
28
29
endlibrary


Zinc version
Code (jass) Select
1
//! zinc
2
library BoolexprUtils {
3
4
    public boolexpr BOOLEXPR_TRUE, BOOLEXPR_FALSE;
5
6
    module Init {
7
        static method onInit() {
8
            BOOLEXPR_TRUE = Filter(function() -> boolean {return true;});
9
            BOOLEXPR_FALSE = Filter(function() -> boolean {return false;});
10
        }
11
    }
12
13
    struct S extends array {module Init;}
14
15
}
16
//! endzinc
9 years
simple, but effective ;)

Good job!