pub async fn save(self) -> anyhow::Result<()> {
        let mut file = tokio::fs::OpenOptions::new()
            .write(true)
            .create(true)
            .truncate(true)
            .open(self.file_path)
            .await
            .context("Failed to open file")?;
        let json = serde_json::to_string_pretty(&self.selectors)?;
        file.write_all(json.as_bytes())
            .await
            .context("Failed to save file")?;
        Ok(())
    }
Saves the selectors to the file.
core/bin/selector_generator/src/app.rs