Skip to content

Commit ed11192

Browse files
committed
Explicitly using py::ssize_t
1 parent e88f201 commit ed11192

File tree

1 file changed

+9
-9
lines changed

1 file changed

+9
-9
lines changed

src/py_stochtree.cpp

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,7 @@ class ForestContainerCpp {
147147
std::vector<double> output_raw = forest_samples_->Predict(*data_ptr);
148148

149149
// Convert result to a matrix
150-
auto result = py::array_t<double>(py::detail::any_container<size_t>({n, num_samples}));
150+
auto result = py::array_t<double>(py::detail::any_container<py::ssize_t>({n, num_samples}));
151151
auto accessor = result.mutable_unchecked<2>();
152152
// py::buffer_info buf = result.request();
153153
// double *ptr = static_cast<double *>(buf.ptr);
@@ -171,7 +171,7 @@ class ForestContainerCpp {
171171
std::vector<double> output_raw = forest_samples_->PredictRaw(*data_ptr);
172172

173173
// Convert result to 3 dimensional array (n x num_samples x output_dim)
174-
auto result = py::array_t<double>(py::detail::any_container<size_t>({n, num_samples, output_dim}));
174+
auto result = py::array_t<double>(py::detail::any_container<py::ssize_t>({n, num_samples, output_dim}));
175175
auto accessor = result.mutable_unchecked<3>();
176176
// py::buffer_info buf = result.request();
177177
// double *ptr = static_cast<double *>(buf.ptr);
@@ -196,7 +196,7 @@ class ForestContainerCpp {
196196
std::vector<double> output_raw = forest_samples_->PredictRaw(*data_ptr, forest_num);
197197

198198
// Convert result to a matrix
199-
auto result = py::array_t<double>(py::detail::any_container<size_t>({n, output_dim}));
199+
auto result = py::array_t<double>(py::detail::any_container<py::ssize_t>({n, output_dim}));
200200
auto accessor = result.mutable_unchecked<2>();
201201
// py::buffer_info buf = result.request();
202202
// double *ptr = static_cast<double *>(buf.ptr);
@@ -629,8 +629,8 @@ class JsonCpp {
629629

630630
py::array_t<double> ExtractDoubleVector(std::string field_name) {
631631
auto json_vec = json_->at(field_name);
632-
size_t json_vec_length = json_->at(field_name).size();
633-
auto result = py::array_t<double>(py::detail::any_container<size_t>({json_vec_length}));
632+
py::ssize_t json_vec_length = json_->at(field_name).size();
633+
auto result = py::array_t<double>(py::detail::any_container<py::ssize_t>({json_vec_length}));
634634
auto accessor = result.mutable_unchecked<1>();
635635
for (size_t i = 0; i < json_vec_length; i++) {
636636
accessor(i) = json_vec.at(i);
@@ -640,8 +640,8 @@ class JsonCpp {
640640

641641
py::array_t<double> ExtractDoubleVectorSubfolder(std::string subfolder_name, std::string field_name) {
642642
auto json_vec = json_->at(subfolder_name).at(field_name);
643-
size_t json_vec_length = json_->at(subfolder_name).at(field_name).size();
644-
auto result = py::array_t<double>(py::detail::any_container<size_t>({json_vec_length}));
643+
py::ssize_t json_vec_length = json_->at(subfolder_name).at(field_name).size();
644+
auto result = py::array_t<double>(py::detail::any_container<py::ssize_t>({json_vec_length}));
645645
auto accessor = result.mutable_unchecked<1>();
646646
for (size_t i = 0; i < json_vec_length; i++) {
647647
accessor(i) = json_vec.at(i);
@@ -651,7 +651,7 @@ class JsonCpp {
651651

652652
std::vector<std::string> ExtractStringVector(std::string field_name) {
653653
auto json_vec = json_->at(field_name);
654-
size_t json_vec_length = json_->at(field_name).size();
654+
py::ssize_t json_vec_length = json_->at(field_name).size();
655655
auto result = std::vector<std::string>(json_vec_length);
656656
for (size_t i = 0; i < json_vec_length; i++) {
657657
result.at(i) = json_vec.at(i);
@@ -661,7 +661,7 @@ class JsonCpp {
661661

662662
std::vector<std::string> ExtractStringVectorSubfolder(std::string subfolder_name, std::string field_name) {
663663
auto json_vec = json_->at(subfolder_name).at(field_name);
664-
size_t json_vec_length = json_->at(subfolder_name).at(field_name).size();
664+
py::ssize_t json_vec_length = json_->at(subfolder_name).at(field_name).size();
665665
auto result = std::vector<std::string>(json_vec_length);
666666
for (size_t i = 0; i < json_vec_length; i++) {
667667
result.at(i) = json_vec.at(i);

0 commit comments

Comments
 (0)