| 2195 | } |
| 2196 | |
| 2197 | void validate_fullStateDiagMatrNewElems(FullStateDiagMatr matr, qindex startInd, qindex numElems, const char* caller) { |
| 2198 | |
| 2199 | assertThat( |
| 2200 | startInd >= 0 && startInd < matr.numElems, |
| 2201 | report::FULL_STATE_DIAG_MATR_NEW_ELEMS_INVALID_START_INDEX, |
| 2202 | {{"${START_IND}", startInd}, {"${MATR_NUM_ELEMS}", matr.numElems}}, |
| 2203 | caller); |
| 2204 | |
| 2205 | assertThat( |
| 2206 | numElems > 0, |
| 2207 | report::FULL_STATE_DIAG_MATR_NEW_ELEMS_NUM_IS_NON_POSITIVE, |
| 2208 | {{"${NUM_ELEMS}", numElems}}, caller); |
| 2209 | |
| 2210 | assertThat( |
| 2211 | numElems <= matr.numElems, |
| 2212 | report::FULL_STATE_DIAG_MATR_NEW_ELEMS_NUM_EXCEEDS_MAX_NUM, |
| 2213 | {{"${NEW_NUM_ELEMS}", numElems}, {"${MATR_NUM_ELEMS}", matr.numElems}}, |
| 2214 | caller); |
| 2215 | |
| 2216 | qindex endIndExcl = startInd + numElems; |
| 2217 | tokenSubs vars = { |
| 2218 | {"${START_IND}", startInd}, |
| 2219 | {"${MATR_NUM_ELEMS}", matr.numElems}, |
| 2220 | {"${END_IND_EXCL}", endIndExcl}}; |
| 2221 | |
| 2222 | assertThat( |
| 2223 | endIndExcl <= matr.numElems, |
| 2224 | report::FULL_STATE_DIAG_MATR_NEW_ELEMS_EXCEEDS_END_INDEX, |
| 2225 | vars, caller); |
| 2226 | } |
| 2227 | |
| 2228 | void validate_matrixNumQubitsMatchesParam(int numMatrQubits, int numSetterQubits, const char* caller) { |
| 2229 |
no test coverage detected