File tree Expand file tree Collapse file tree 5 files changed +20
-22
lines changed Expand file tree Collapse file tree 5 files changed +20
-22
lines changed Original file line number Diff line number Diff line change @@ -126,7 +126,7 @@ ELSE(WIN32)
126
126
IF ((NOT DEFINED MATLAB_ROOT) OR ("${MATLAB_ROOT} " STREQUAL "" ))
127
127
128
128
# Search for a version of Matlab available, starting from the most modern one to older versions
129
- FOREACH (MATVER "R2013b" "R2013a" "R2012b" "R2012a" "R2011b" "R2011a" "R2010b" "R2010a" "R2009b" "R2009a" "R2008b" )
129
+ FOREACH (MATVER "R2014b" "R2014a" " R2013b" "R2013a" "R2012b" "R2012a" "R2011b" "R2011a" "R2010b" "R2010a" "R2009b" "R2009a" "R2008b" )
130
130
SET (MATLAB_VERSION ${MATVER} )
131
131
IF ((NOT DEFINED MATLAB_ROOT) OR ("${MATLAB_ROOT} " STREQUAL "" ))
132
132
IF (EXISTS /Applications/MATLAB_${MATVER} .app)
@@ -194,4 +194,4 @@ MARK_AS_ADVANCED(
194
194
MATLAB_MEXEXT
195
195
MATLAB_FOUND
196
196
MATLAB_ROOT
197
- )
197
+ )
Original file line number Diff line number Diff line change @@ -69,11 +69,6 @@ class extractor : public argument_helper<const mxArray> {
69
69
return mx_to_vector<T>(array[pos]);
70
70
}
71
71
72
- template <>
73
- std::vector<std::string> vec (size_t pos) const {
74
- return mx_to_strings (array[pos]);
75
- }
76
-
77
72
std::vector<nix::Value> vec (size_t pos) const {
78
73
return mx_to_values (array[pos]);
79
74
}
@@ -122,6 +117,11 @@ class extractor : public argument_helper<const mxArray> {
122
117
private:
123
118
};
124
119
120
+ template <>
121
+ inline std::vector<std::string> extractor::vec (size_t pos) const {
122
+ return mx_to_strings (array[pos]);
123
+ }
124
+
125
125
126
126
class infusor : public argument_helper <mxArray> {
127
127
public:
Original file line number Diff line number Diff line change @@ -40,8 +40,7 @@ struct ex_getter < std::string > {
40
40
template <>
41
41
struct ex_getter < boost::none_t > {
42
42
static boost::none_t get (const extractor &input, int pos) {
43
- boost::none_t t = nullptr ;
44
- return t;
43
+ return boost::none;
45
44
}
46
45
};
47
46
Original file line number Diff line number Diff line change @@ -72,17 +72,6 @@ inline mxArray* make_mx_array(const std::vector<nix::Value> &v) {
72
72
return data;
73
73
}
74
74
75
-
76
- template <typename T>
77
- mxArray* make_mx_array (const boost::optional<T> &opt) {
78
- if (opt) {
79
- return make_mx_array (*opt);
80
- }
81
- else {
82
- return nullptr ;
83
- }
84
- }
85
-
86
75
template <typename T>
87
76
typename std::enable_if<std::is_arithmetic<T>::value, mxArray>::type* make_mx_array (T val) {
88
77
DType2 dtype = dtype_nix2mex (nix::to_data_type<T>::value);
@@ -156,5 +145,15 @@ inline mxArray* make_mx_array(const std::vector<nix::Dimension> &dims) {
156
145
return data;
157
146
}
158
147
148
+ template <typename T>
149
+ mxArray* make_mx_array (const boost::optional<T> &opt) {
150
+ if (opt) {
151
+ return make_mx_array (*opt);
152
+ }
153
+ else {
154
+ return nullptr ;
155
+ }
156
+ }
157
+
159
158
160
159
#endif
Original file line number Diff line number Diff line change @@ -152,7 +152,7 @@ nix::Value mx_to_value_from_struct(const mxArray *arr) {
152
152
case 3 : val.encoder = mx_to_str (field_array_ptr); break ;
153
153
case 4 : val.filename = mx_to_str (field_array_ptr); break ;
154
154
case 5 : val.reference = mx_to_str (field_array_ptr); break ;
155
- default : throw std::invalid_argument (strcat (" Field is not supported: " , field_name));
155
+ default : throw std::invalid_argument (std::string (" Field is not supported: " ) + std::string ( field_name));
156
156
}
157
157
}
158
158
@@ -188,4 +188,4 @@ std::vector<nix::Value> mx_to_values(const mxArray *arr) {
188
188
}
189
189
190
190
return vals;
191
- }
191
+ }
You can’t perform that action at this time.
0 commit comments