Esempio n. 1
0
    class V:
        v1: +v(int)
        v2: +v(str)

        @validate()
        def ver1(self):
            return len(self.v2) > self.v1

        @validate()
        def ver2(self, context: ValidationContext):
            context.put(ver2=True)
            return self.v1 > context.value
Esempio n. 2
0
 class V:
     v1: v([int]) = [1]
     v2: +v([int]) = [2]
     v3: v([("c2", int)]) = [3]
     v4: v([E]) = [E.E5]
     v5: v([p(int, base=2)]) = [5]
     v6: v([int], [gt0]) = [6]
     v7: v([int], [gt0], [lt]) = [7]
     v8: v([int], [gt0], longer) = [8]
Esempio n. 3
0
    class V:
        v1: +v(int)
        v2: +v(int)
        v3: +v(int)

        @validate()
        def ver1(self):
            return self.v1 > 0

        @validate(v1=True)
        def ver2(self):
            return self.v1 > 0

        @validate(v1=True, v2=True)
        def ver3(self):
            return self.v1 > 0

        @validate(v1=True, v3=False)
        def ver4(self):
            return self.v1 > 0
Esempio n. 4
0
 class V:
     v1: +v({P}) = None
     v2: +v({Q}) = None
Esempio n. 5
0
 class C:
     v1: v({D})
Esempio n. 6
0
 class C:
     c1: +v([int], [gt0]) = [1]
     c2: +v(int, gt0) = 2
Esempio n. 7
0
 class V:
     v1: +v(int)
     v2: +v(str)
     v3: +v({U})
Esempio n. 8
0
 class D:
     v2: v(int)
Esempio n. 9
0
 class V:
     v1: v(lambda x: 0 if x is None else 1)
     v2: v([int])
Esempio n. 10
0
 class U:
     u1: +v(int)
Esempio n. 11
0
 class V:
     # don't fail
     v1: v(str) = "v1"
     # required
     v2: +v(str) = "v2"
     # converter
     v3: v(int) = 3
     # converter without default
     v4: v(int)
     # named converter
     v5: v(("c5", int)) = 5
     # Enum
     v6: v(E) = E.E2
     # converter with partial
     v7: v(p(int, base=2)) = 7
     # verifier
     v8: v(int, gt0) = 8
     # verifier without default
     v9: v(int, gt0)
     # multiple verifiers
     v10: v(int, gt0, lt) = 10
     # named verifier
     v11: v(int, ("v13", gt0)) = 11
     # verifier with partial
     v12: v(int, p(gt, th=0)) = 12
Esempio n. 12
0
 class Requirement:
     v1 = None
     v2: int
     v3: v(int)
     v4: +v(int)
     v5: v(int) & None | ...= 5
Esempio n. 13
0
 class P:
     p1: +v({Q}) = None
     p2: +v({Q}) = None
Esempio n. 14
0
 class C:
     v1: v(int)
Esempio n. 15
0
 class Q:
     q1: +v(int)
     q2: +v(int)
Esempio n. 16
0
 class V:
     v1: +v({P}) = None
     v2: +v([{P}]) = []
Esempio n. 17
0
 class P:
     p1: +v({C}) = None
     p2: +v([{C}]) = []
Esempio n. 18
0
 class C:
     c1: +v([int]) = [1]
     c2: +v(int) = 2
Esempio n. 19
0
 class C:
     v1: v(int, key="value-1")