aboutsummaryrefslogtreecommitdiffstats
path: root/yql/essentials/tests/s-expressions/suites/Builtins/Fold2Lambda.yql
blob: 9d15c7ceb826fa0948734b383692d4d0cad90dc6 (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
(
#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 table1map (Map table1 (lambda '(item) (block '(
   (let value (Member item 'value))
   (let newValue (AsList value))
   (let newValue (Prepend (String 'prepended) newValue))
   (let newValue (Append newValue (String 'appended)))
   (let myLambda (lambda '(item state) (+ state item)))
   (let state (Uint32 '0))
   (let state (Fold (Map newValue (lambda '(x) (Size x))) state myLambda))
   (let ilist (AsList (Int32 '4)))
   (let ilist (Append ilist (Int32 '6)))
   (let state2 (Int32 '0))
   (let state2 (Fold ilist state2 myLambda))
   (let s (Struct))
   (let s (AddMember s 'key (Member item 'key)))
   (let s (AddMember s 'subkey (String  '.)))
   (let s (AddMember s 'value (Concat (Concat value (String '" ==> ")) (Concat (ToString state) (ToString state2)))))
   (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)
)