diff options
author | nkozlovskiy <nmk@ydb.tech> | 2023-09-29 12:24:06 +0300 |
---|---|---|
committer | nkozlovskiy <nmk@ydb.tech> | 2023-09-29 12:41:34 +0300 |
commit | e0e3e1717e3d33762ce61950504f9637a6e669ed (patch) | |
tree | bca3ff6939b10ed60c3d5c12439963a1146b9711 /library/python/runtime/__res.pyx | |
parent | 38f2c5852db84c7b4d83adfcb009eb61541d1ccd (diff) | |
download | ydb-e0e3e1717e3d33762ce61950504f9637a6e669ed.tar.gz |
add ydb deps
Diffstat (limited to 'library/python/runtime/__res.pyx')
-rw-r--r-- | library/python/runtime/__res.pyx | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/library/python/runtime/__res.pyx b/library/python/runtime/__res.pyx new file mode 100644 index 0000000000..5e2e72abf3 --- /dev/null +++ b/library/python/runtime/__res.pyx @@ -0,0 +1,31 @@ +from libcpp cimport bool + +from util.generic.string cimport TString, TStringBuf + + +cdef extern from "library/cpp/resource/resource.h" namespace "NResource": + cdef size_t Count() except + + cdef TStringBuf KeyByIndex(size_t idx) except + + cdef bool FindExact(const TStringBuf key, TString* result) nogil except + + + +def count(): + return Count() + + +def key_by_index(idx): + cdef TStringBuf ret = KeyByIndex(idx) + + return ret.Data()[:ret.Size()] + + +def find(s): + cdef TString res + + if FindExact(TStringBuf(s, len(s)), &res): + return res.c_str()[:res.length()] + + return None + + +include "importer.pxi" |