How does one find out whether a field in an object in an array exists? The commented out `echo declared(c1.content[0].thing)` errors.
How do I find whether a value in a field of an object in an array exists using a proc, or template? The commented out code shows my failure. type Box = object thing: string food: bool Container = object content: seq[Box] var c1 = Container( content: @[ Box(thing: "cake", food: true), Box(thing: "truck", food: false), Box(thing: "black puddin'", food: true), Box(thing: "dandelion", food: true) ] ) echo type c1 echo type c1.content echo type c1.content[0] echo type c1.content[0].thing echo declared(c1.content) #echo declared(c1.content[0].thing) var found = 0 let item = false for obj in items(c1.content): if obj.food == item: echo found inc(found) #proc findInObjSeq*[T, S, P](a: T, field: P, item: S): int {.inline.} = # result = 0 # for obj in items(a): # if obj.field == item: return # inc(result) # result = -1 # #echo findInObjSeq(c1, food, true) Run