| 56 | } |
| 57 | |
| 58 | char* Demangle::demangleRust(struct demangle const *demangle, bool full_signature) { |
| 59 | for (size_t demangled_size = 64; demangled_size < 1000000; demangled_size *= 2) { |
| 60 | char* result = (char*)malloc(demangled_size); |
| 61 | if (result == NULL) { |
| 62 | return NULL; |
| 63 | } |
| 64 | if (rust_demangle_display_demangle(demangle, result, demangled_size, !full_signature /* alternate */) == OverflowOk) { |
| 65 | return result; |
| 66 | } |
| 67 | free(result); |
| 68 | } |
| 69 | // demangling Rust failed, return NULL |
| 70 | return NULL; |
| 71 | } |
| 72 | |
| 73 | void Demangle::cutArguments(char* s) { |
| 74 | char* p = strrchr(s, ')'); |
nothing calls this directly
no test coverage detected