Change library to use dynamic API of capnproto.
Currently only get is working on DynamicStructReader, but the mechanics are mostly there.
This commit is contained in:
26
capnp_cpp.pxd
Normal file
26
capnp_cpp.pxd
Normal file
@@ -0,0 +1,26 @@
|
||||
# schema.capnp.cpp.pyx
|
||||
# distutils: language = c++
|
||||
# distutils: extra_compile_args = --std=c++11
|
||||
# distutils: libraries = capnp
|
||||
from schema_cpp cimport Node
|
||||
|
||||
cdef extern from "capnp/dynamic.h" namespace "::capnp":
|
||||
cdef cppclass DynamicValue:
|
||||
cppclass Reader:
|
||||
pass
|
||||
cdef cppclass DynamicStruct:
|
||||
cppclass Reader:
|
||||
DynamicValue.Reader get(char *) except +ValueError
|
||||
bint has(char *)
|
||||
|
||||
cdef extern from "capnp/schema.h" namespace "::capnp":
|
||||
cdef cppclass Schema:
|
||||
Node.Reader getProto()
|
||||
StructSchema asStruct()
|
||||
cdef cppclass StructSchema(Schema):
|
||||
pass
|
||||
|
||||
cdef extern from "capnp/schema-loader.h" namespace "::capnp":
|
||||
cdef cppclass SchemaLoader:
|
||||
SchemaLoader()
|
||||
Schema load(Node.Reader &) except +
|
||||
Reference in New Issue
Block a user