elefant_tools/models/
extension.rs1use crate::object_id::ObjectId;
2use crate::quoting::AttemptedKeywordUsage::ColumnName;
3use crate::quoting::{IdentifierQuoter, Quotable};
4use serde::{Deserialize, Serialize};
5
6#[derive(Debug, Eq, PartialEq, Default, Clone, Serialize, Deserialize)]
7pub struct PostgresExtension {
8 pub name: String,
9 pub schema_name: String,
10 pub version: String,
11 pub relocatable: bool,
12 pub object_id: ObjectId,
13}
14
15impl PostgresExtension {
16 pub fn get_create_statement(&self, identifier_quoter: &IdentifierQuoter) -> String {
17 format!(
18 "create extension if not exists {};",
19 self.name.quote(identifier_quoter, ColumnName)
20 )
21 }
22}