| 244 | } |
| 245 | |
| 246 | methodID Connection::GetMethod(referenceTypeID type, const rdcstr &name, const rdcstr &signature, |
| 247 | referenceTypeID *methClass) |
| 248 | { |
| 249 | referenceTypeID searchClass = type; |
| 250 | |
| 251 | while(searchClass != 0) |
| 252 | { |
| 253 | /* |
| 254 | RDCDEBUG("Searching for %s (%s) in '%s'", name.c_str(), signature.c_str(), |
| 255 | GetSignature(searchClass).c_str()); |
| 256 | */ |
| 257 | |
| 258 | rdcarray<Method> methods = GetMethods(searchClass); |
| 259 | |
| 260 | for(const Method &m : methods) |
| 261 | { |
| 262 | if(m.name == name && (signature == "" || signature == m.signature)) |
| 263 | { |
| 264 | if(methClass) |
| 265 | *methClass = searchClass; |
| 266 | return m.id; |
| 267 | } |
| 268 | } |
| 269 | |
| 270 | searchClass = GetSuper(searchClass); |
| 271 | } |
| 272 | |
| 273 | return {}; |
| 274 | } |
| 275 | |
| 276 | rdcarray<VariableSlot> Connection::GetLocalVariables(referenceTypeID type, methodID method) |
| 277 | { |
no outgoing calls
no test coverage detected