mirror of
https://github.com/status-im/nim-serialization.git
synced 2025-02-14 21:17:06 +00:00
Add findFieldIdx
This commit is contained in:
parent
9eb8807706
commit
493d18b829
@ -247,6 +247,20 @@ proc fieldReadersTable*(RecordType, ReaderType: distinct type):
|
||||
tbl[] = makeFieldReadersTable(RecordType, ReaderType)
|
||||
return addr(tbl[])
|
||||
|
||||
proc findFieldIdx*(fieldsTable: FieldReadersTable,
|
||||
fieldName: string,
|
||||
expectedFieldPos: var int): int =
|
||||
for i in expectedFieldPos ..< fieldsTable.len:
|
||||
if fieldsTable[i].fieldName == fieldName:
|
||||
expectedFieldPos = i + 1
|
||||
return i
|
||||
|
||||
for i in 0 ..< expectedFieldPos:
|
||||
if fieldsTable[i].fieldName == fieldName:
|
||||
return i
|
||||
|
||||
return -1
|
||||
|
||||
proc findFieldReader*(fieldsTable: FieldReadersTable,
|
||||
fieldName: string,
|
||||
expectedFieldPos: var int): auto =
|
||||
|
Loading…
x
Reference in New Issue
Block a user