/* (in such cases, csoundInitError() is also called) */ int32 strarg2opcno(CSOUND *csound, void *p, int is_string, int force_opcode) { int32 insno = 0; if (!force_opcode) { /* try instruments first, if enabled */ if (is_string) { insno = named_instr_find(csound, (char*) p); } else { /* numbered instrument */ insno = (int32) *((MYFLT*) p); if (UNLIKELY(insno < 1 || insno > csound->engineState.maxinsno || !csound->engineState.instrtxtp[insno])) { csound->InitError(csound, Str("Cannot Find Instrument %d"), (int) insno); return NOT_AN_INSTRUMENT; } } } if (!insno && is_string) { /* if no instrument was found, */ OPCODINFO *inm = csound->opcodeInfo; /* search for user opcode */ while (inm && sCmp(inm->name, (char*) p)) inm = inm->prv; if (inm) insno = (int32) inm->instno; } if (UNLIKELY(insno < 1)) { csound->InitError(csound, Str("cannot find the specified instrument or opcode")); insno = NOT_AN_INSTRUMENT; } return insno; }
bool ValueArray::operator==(const ValueArray& v) const { return sCmp(data->data, v.data->data); }
bool ValueArray::Data::IsEqual(const Value::Void *p) { return sCmp(((Data *)p)->data, data); }