aboutsummaryrefslogtreecommitdiffstats
path: root/yql/essentials/tests/s-expressions/suites/Builtins/Extract.yql
blob: 97637f6e252584f56fbc91854007ff350d31a9f0 (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
(
#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 (FlatMap table1 (lambda '(item) (block '(
   (let value (Member item 'value))
   (let list1 (AsList item))
   (let list2 (Just '(value (Uint32 '22))))
   (let structExtract (Extract list1 'key))
   (let tupleExtract (Extract list2 '0))
   (let ret (Map (Extend structExtract (ToList tupleExtract)) (lambda '(item) (block '(
      (let s (Struct))
      (let s (AddMember s 'key (String '.)))
      (let s (AddMember s 'subkey (String  '.)))
      (let s (AddMember s 'value item))
      (return s))))))
   (return ret)
)))))
(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)
)