> For the complete documentation index, see [llms.txt](https://cyfrin.gitbook.io/cyfrin-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://cyfrin.gitbook.io/cyfrin-docs/internals/detectors-quickstart/detectors-api-reference/description.md).

# description

function used to detect vulnerabilities TBD

**`description`**

```rust
fn description(&self) -> String
```

Definition: <https://github.com/Cyfrin/aderyn/blob/dev/aderyn_core/src/detect/detector.rs#L195>

Gives a detailed description of the issue.

**Returns:**

* `String`: A string containing a detailed description of what the issue is, why it is significant, and possibly how to fix it.

#### Example

```rust
    fn description(&self) -> String {
        String::from("There is a subtle difference between the implementation of solmate's SafeTransferLib and OZ's SafeERC20: OZ's SafeERC20 checks if the token is a contract or not, solmate's SafeTransferLib does not.\nhttps://github.com/transmissions11/solmate/blob/main/src/utils/SafeTransferLib.sol#L9 \n`@dev Note that none of the functions in this library check that a token has code at all! That responsibility is delegated to the caller`\n")
    }

```
