fn hook()

in src/plugin/plugin_mysqli.rs [48:84]


    fn hook(
        &self, class_name: Option<&str>, function_name: &str,
    ) -> Option<(Box<BeforeExecuteHook>, Box<AfterExecuteHook>)> {
        match (class_name, function_name) {
            (Some("mysqli"), "__construct" | "real_connect") => {
                Some(self.hook_mysqli_connect(class_name, function_name, ApiStyle::OO))
            }
            (None, "mysqli_connect" | "mysqli_real_connect") => {
                Some(self.hook_mysqli_connect(class_name, function_name, ApiStyle::Procedural))
            }
            (Some("mysqli"), f)
                if [
                    "query",
                    "execute_query",
                    "multi_query",
                    "real_query",
                    "prepare",
                ]
                .contains(&f) =>
            {
                Some(self.hook_mysqli_methods(class_name, function_name, ApiStyle::OO))
            }
            (None, f)
                if [
                    "mysqli_query",
                    "mysqli_execute_query",
                    "mysqli_multi_query",
                    "mysqli_real_query",
                    "mysqli_prepare",
                ]
                .contains(&f) =>
            {
                Some(self.hook_mysqli_methods(class_name, function_name, ApiStyle::Procedural))
            }
            _ => None,
        }
    }