type
Entity = concept x
x.foo is int
x.bar is int
ObjectOne = object
x: int
y: int
ObjectTwo = object
x: int
y: int
Repository[T: Entity] = ref object
SqliteRepository[T: Entity] = ref object
when isMainModule:
var r: SqliteRepository[ObjectOne]
# ...
dHlwZQogIEVudGl0eSA9IGNvbmNlcHQgeAogICAgeC5mb28gaXMgaW50CiAgICB4LmJhciBpcyBpbnQKCiAgT2JqZWN0T25lID0gb2JqZWN0CiAgICB4OiBpbnQKICAgIHk6IGludAogCiAgT2JqZWN0VHdvID0gb2JqZWN0CiAgICB4OiBpbnQKICAgIHk6IGludAogCiAgUmVwb3NpdG9yeVtUOiBFbnRpdHldID0gcmVmIG9iamVjdAogCiAgU3FsaXRlUmVwb3NpdG9yeVtUOiBFbnRpdHldID0gcmVmIG9iamVjdAogCndoZW4gaXNNYWluTW9kdWxlOgogIHZhciByOiBTcWxpdGVSZXBvc2l0b3J5W09iamVjdE9uZV0KICAjIC4uLg==