aboutsummaryrefslogtreecommitdiffstats
path: root/yql/essentials/tests/s-expressions/suites/Builtins/AndOverOptional.yqls
blob: 4b878ab6d05373c8ba3e051f7507c4cf56af5858 (plain) (blame)
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
(
#comment
(let mr_source (DataSource 'yt 'plato))
(let x (Read! world mr_source (Key '('table (String 'Input))) '('key 'subkey 'value) '()))
(let world (Left! x))
(let table1 (Right! x))
(let writer (lambda '(x) (MatchType x 'Optional 
(lambda '(x) (Coalesce (Map x (lambda '(y) (ToString y))) (String 'NULL)))
(lambda '(x) (ToString x)))))
(let table1map (Map table1 (lambda '(item) (block '(
   (let value (Member item 'value))
   (let t (Bool 'true))
   (let jt (Just t))
   (let f (Bool 'false))
   (let jf (Just f))
   (let n (Nothing (OptionalType (DataType 'Bool))))
   (let newValue value)

   (let newValue (Concat newValue (String '" => AND true : ")))
   (let newValue (Concat newValue (Concat (String '" ") (Apply writer (And t t)))))
   (let newValue (Concat newValue (Concat (String '" ") (Apply writer (And t jt)))))
   (let newValue (Concat newValue (Concat (String '" ") (Apply writer (And t f)))))
   (let newValue (Concat newValue (Concat (String '" ") (Apply writer (And t jf)))))         
   (let newValue (Concat newValue (Concat (String '" ") (Apply writer (And t n)))))
   (let newValue (Concat newValue (String '" => AND false : ")))
   (let newValue (Concat newValue (Concat (String '" ") (Apply writer (And f t)))))
   (let newValue (Concat newValue (Concat (String '" ") (Apply writer (And f jt)))))
   (let newValue (Concat newValue (Concat (String '" ") (Apply writer (And f f)))))
   (let newValue (Concat newValue (Concat (String '" ") (Apply writer (And f jf)))))         
   (let newValue (Concat newValue (Concat (String '" ") (Apply writer (And f n)))))          
   (let newValue (Concat newValue (String '" => AND just true : ")))
   (let newValue (Concat newValue (Concat (String '" ") (Apply writer (And jt t)))))
   (let newValue (Concat newValue (Concat (String '" ") (Apply writer (And jt jt)))))
   (let newValue (Concat newValue (Concat (String '" ") (Apply writer (And jt f)))))
   (let newValue (Concat newValue (Concat (String '" ") (Apply writer (And jt jf)))))         
   (let newValue (Concat newValue (Concat (String '" ") (Apply writer (And jt n)))))
   (let newValue (Concat newValue (String '" => AND just false : ")))   
   (let newValue (Concat newValue (Concat (String '" ") (Apply writer (And jf t)))))
   (let newValue (Concat newValue (Concat (String '" ") (Apply writer (And jf jt)))))
   (let newValue (Concat newValue (Concat (String '" ") (Apply writer (And jf f)))))
   (let newValue (Concat newValue (Concat (String '" ") (Apply writer (And jf jf)))))         
   (let newValue (Concat newValue (Concat (String '" ") (Apply writer (And jf n)))))                
   (let newValue (Concat newValue (String '" => AND nothing : ")))      
   (let newValue (Concat newValue (Concat (String '" ") (Apply writer (And n t)))))
   (let newValue (Concat newValue (Concat (String '" ") (Apply writer (And n jt)))))
   (let newValue (Concat newValue (Concat (String '" ") (Apply writer (And n f)))))
   (let newValue (Concat newValue (Concat (String '" ") (Apply writer (And n jf)))))         
   (let newValue (Concat newValue (Concat (String '" ") (Apply writer (And n n)))))                
  
   (let s (Struct))
   (let s (AddMember s 'key (Member item 'key)))
   (let s (AddMember s 'subkey (Member item 'subkey)))
   (let s (AddMember s 'value newValue))
   (return s)
)))))
(let mr_sink (DataSink 'yt (quote plato)))
(let world (Write! world mr_sink (Key '('table (String 'Output))) table1map '('('mode 'append))))
(let world (Commit! world mr_sink))
(return world)
)