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
|
# bug #16706
block: # reduced example
type
A = object of RootObj
a0: string
B = object
b0: seq[A]
var c = newSeq[A](2)
var d = B(b0: c)
when true: # original example
import std/[options, tables, times]
type
Data* = object
shifts*: OrderedTable[int64, Shift]
balance*: float
Shift* = object
quoted*: bool
date*: DateTime
description*: string
start*: Option[DateTime]
finish*: Option[DateTime]
breakTime*: Option[Duration]
rate*: float
qty: Option[float]
id*: int64
let shift = Shift(
quoted: true,
date: parse("2000-01-01", "yyyy-MM-dd"),
description: "abcdef",
start: none(DateTime),
finish: none(DateTime),
breakTime: none(Duration),
rate: 462.11,
qty: some(10.0),
id: getTime().toUnix()
)
var shifts: OrderedTable[int64, Shift]
shifts[shift.id] = shift
discard Data(
shifts: shifts,
balance: 0.00
)
|