diff --git a/python/src/addons/JsonVector.pyx b/python/src/addons/JsonVector.pyx index cce6f7a6c..33c582c9d 100644 --- a/python/src/addons/JsonVector.pyx +++ b/python/src/addons/JsonVector.pyx @@ -1,8 +1,17 @@ - def Get(self, index ): + def __getitem__(self, index ): assert isinstance(index, (int, long)), 'arg index wrong type' cdef libcpp_utf8_string _r = self.inst.get().Get((index)) py_result = json.loads(_r.decode('utf-8')) return py_result + + def Get(self, *args): + return call_deprecated_method("Get", "__getitem__", self.__getitem__, *args) + + def Size(self, *args): + return call_deprecated_method("Size", "__len__", self.__len__, *args) + + def Manifest(self, *args): + return call_deprecated_method("Manifest", "manifest", self.manifest, *args) diff --git a/python/src/addons/JsonVectorGenerator.pyx b/python/src/addons/JsonVectorGenerator.pyx index 483520d69..10906018d 100644 --- a/python/src/addons/JsonVectorGenerator.pyx +++ b/python/src/addons/JsonVectorGenerator.pyx @@ -1,5 +1,14 @@ - def PushBack(self, in_0 ): + def append(self, in_0 ): dumps = json.dumps(in_0).encode('utf-8') self.inst.get().PushBack((dumps)) + + def PushBack(self, *args): + return call_deprecated_method("PushBack", "append", self.append, *args) + + def SetManifest(self, *args): + return call_deprecated_method("SetManifest", "set_manifest", self.set_manifest, *args) + + def WriteToFile(self, *args): + return call_deprecated_method("WriteToFile", "write_to_file", self.write_to_file, *args) diff --git a/python/src/addons/StringVector.pyx b/python/src/addons/StringVector.pyx new file mode 100644 index 000000000..aad51e72d --- /dev/null +++ b/python/src/addons/StringVector.pyx @@ -0,0 +1,10 @@ + + + def Get(self, *args): + return call_deprecated_method("Get", "__getitem__", self.__getitem__, *args) + + def Size(self, *args): + return call_deprecated_method("Size", "__len__", self.__len__, *args) + + def Manifest(self, *args): + return call_deprecated_method("Manifest", "manifest", self.manifest, *args) diff --git a/python/src/addons/StringVectorGenerator.pyx b/python/src/addons/StringVectorGenerator.pyx new file mode 100644 index 000000000..f3a75522c --- /dev/null +++ b/python/src/addons/StringVectorGenerator.pyx @@ -0,0 +1,10 @@ + + + def PushBack(self, *args): + return call_deprecated_method("PushBack", "append", self.append, *args) + + def SetManifest(self, *args): + return call_deprecated_method("SetManifest", "set_manifest", self.set_manifest, *args) + + def WriteToFile(self, *args): + return call_deprecated_method("WriteToFile", "write_to_file", self.write_to_file, *args) diff --git a/python/src/pxds/vector.pxd b/python/src/pxds/vector.pxd index 46036ad75..c8cd698fe 100644 --- a/python/src/pxds/vector.pxd +++ b/python/src/pxds/vector.pxd @@ -4,12 +4,12 @@ cdef extern from "keyvi/vector/vector_types.h" namespace "keyvi::vector": cdef cppclass JsonVector: JsonVector(libcpp_utf8_output_string filename) except + libcpp_utf8_output_string Get(size_t index) # wrap-ignore - size_t Size() - libcpp_utf8_output_string Manifest() + size_t Size() # wrap-as:__len__ + libcpp_utf8_output_string Manifest() # wrap-as:manifest cdef extern from "keyvi/vector/vector_types.h" namespace "keyvi::vector": cdef cppclass StringVector: StringVector(libcpp_utf8_output_string filename) except + - libcpp_utf8_output_string Get(size_t index) - size_t Size() - libcpp_utf8_output_string Manifest() + libcpp_utf8_output_string Get(size_t index) # wrap-as:__getitem__ + size_t Size() # wrap-as:__len__ + libcpp_utf8_output_string Manifest() # wrap-as:manifest diff --git a/python/src/pxds/vector_generator.pxd b/python/src/pxds/vector_generator.pxd index 4e484b3f4..beecdfad0 100644 --- a/python/src/pxds/vector_generator.pxd +++ b/python/src/pxds/vector_generator.pxd @@ -6,13 +6,13 @@ cdef extern from "keyvi/vector/vector_types.h" namespace "keyvi::vector": JsonVectorGenerator() except + JsonVectorGenerator(libcpp_map[libcpp_utf8_string, libcpp_utf8_string] value_store_params) except + void PushBack(libcpp_utf8_string) # wrap-ignore - void SetManifest(libcpp_utf8_string) - void WriteToFile(libcpp_utf8_string) except + + void SetManifest(libcpp_utf8_string) # wrap-as:set_manifest + void WriteToFile(libcpp_utf8_string) except + # wrap-as:write_to_file cdef extern from "keyvi/vector/vector_types.h" namespace "keyvi::vector": cdef cppclass StringVectorGenerator: StringVectorGenerator() except + StringVectorGenerator(libcpp_map[libcpp_utf8_string, libcpp_utf8_string] value_store_params) except + - void PushBack(libcpp_utf8_string) - void SetManifest(libcpp_utf8_string) - void WriteToFile(libcpp_utf8_string) except + + void PushBack(libcpp_utf8_string) # wrap-as:append + void SetManifest(libcpp_utf8_string) # wrap-as:set_manifest + void WriteToFile(libcpp_utf8_string) except + # wrap-as:write_to_file diff --git a/python/tests/vector/basic_test.py b/python/tests/vector/basic_test.py index 0b03aae8c..bda047cf5 100644 --- a/python/tests/vector/basic_test.py +++ b/python/tests/vector/basic_test.py @@ -13,16 +13,16 @@ def test_basic_json_test(): size = 10000 for i in range(size): - generator.PushBack([i, i + 1]) + generator.append([i, i + 1]) - generator.WriteToFile('vector_json_basic_test.kv') + generator.write_to_file('vector_json_basic_test.kv') vector = keyvi.vector.JsonVector('vector_json_basic_test.kv') - assert size == vector.Size() + assert size == len(vector) for i in range(size): - assert [i, i + 1] == vector.Get(i) + assert [i, i + 1] == vector[i] os.remove('vector_json_basic_test.kv') @@ -33,33 +33,33 @@ def test_basic_string_test(): size = 10000 for i in range(size): - generator.PushBack(str(i)) + generator.append(str(i)) - generator.WriteToFile('vector_string_basic_test.kv') + generator.write_to_file('vector_string_basic_test.kv') vector = keyvi.vector.StringVector('vector_string_basic_test.kv') - assert size == vector.Size() + assert size == len(vector) for i in range(size): - assert str(i) == vector.Get(i) + assert str(i) == vector[i] os.remove('vector_string_basic_test.kv') def test_basic_manifest(): generator = keyvi.vector.StringVectorGenerator() - generator.SetManifest('manifest') - generator.WriteToFile('vector_manifest.kv') + generator.set_manifest('manifest') + generator.write_to_file('vector_manifest.kv') vector = keyvi.vector.StringVector('vector_manifest.kv') - assert 'manifest' == vector.Manifest() + assert 'manifest' == vector.manifest() os.remove('vector_manifest.kv') def test_basic_write_to_invalid_file(): generator = keyvi.vector.StringVectorGenerator() - generator.SetManifest('manifest') + generator.set_manifest('manifest') with raises(ValueError): - generator.WriteToFile(os.path.join("invalid", "sub", "directory", "file.kv")) + generator.write_to_file(os.path.join("invalid", "sub", "directory", "file.kv"))