Skip to content

Commit f80cede

Browse files
committed
structure
1 parent 54cbf8b commit f80cede

File tree

4 files changed

+11
-9
lines changed

4 files changed

+11
-9
lines changed

crates/kitsune-language/src/consts.rs

+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
pub const DB_ENUM_NAME: &str = "kitsune.language_iso_code";
2+
pub const DB_FUNCTION_NAME: &str = "kitsune.iso_code_to_language";

crates/kitsune-language/src/lib.rs

+1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
use rustc_hash::FxHashSet;
22
use std::sync::OnceLock;
33

4+
mod consts;
45
mod detect;
56
mod map;
67
mod pg_enum;

crates/kitsune-language/src/pg_enum.rs

+3-5
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
1-
use crate::supported_languages;
1+
use crate::{consts::DB_ENUM_NAME, supported_languages};
22
use diesel::{pg::Pg, row::NamedRow, QueryResult, QueryableByName};
33
use diesel_async::{AsyncConnection, RunQueryDsl};
44
use std::fmt::Write;
55

6-
pub const ENUM_NAME: &str = "kitsune.language_iso_code";
7-
86
struct CountResult {
97
count: i64,
108
}
@@ -23,7 +21,7 @@ where
2321
C: AsyncConnection<Backend = Pg>,
2422
{
2523
let language_count: CountResult = diesel::sql_query(format!(
26-
"SELECT COUNT(1) AS count FROM UNNEST(ENUM_RANGE(NULL::{ENUM_NAME}));"
24+
"SELECT COUNT(1) AS count FROM UNNEST(ENUM_RANGE(NULL::{DB_ENUM_NAME}));"
2725
))
2826
.get_result(conn)
2927
.await?;
@@ -37,7 +35,7 @@ where
3735
let queries = supported_languages().fold(String::new(), |mut out, lang| {
3836
write!(
3937
out,
40-
"ALTER TYPE {ENUM_NAME} ADD VALUE IF NOT EXISTS '{}';",
38+
"ALTER TYPE {DB_ENUM_NAME} ADD VALUE IF NOT EXISTS '{}';",
4139
lang.to_639_3()
4240
)
4341
.unwrap();

crates/kitsune-language/src/regconfig.rs

+5-4
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
use crate::{pg_enum::ENUM_NAME, supported_languages};
1+
use crate::{
2+
consts::{DB_ENUM_NAME, DB_FUNCTION_NAME},
3+
supported_languages,
4+
};
25
use diesel::{deserialize, pg::Pg, row::NamedRow, QueryableByName};
36
use diesel_async::{AsyncConnection, RunQueryDsl};
47
use std::{collections::HashSet, fmt::Write};
58

6-
const FUNCTION_NAME: &str = "kitsune.iso_code_to_language";
7-
89
#[derive(Debug)]
910
struct PgCatalogResult {
1011
cfgname: String,
@@ -34,7 +35,7 @@ where
3435

3536
let mut function = format!(
3637
r#"
37-
CREATE OR REPLACE FUNCTION {FUNCTION_NAME} ({ENUM_NAME})
38+
CREATE OR REPLACE FUNCTION {DB_FUNCTION_NAME} ({DB_ENUM_NAME})
3839
RETURNS regconfig
3940
AS $$
4041
SELECT CASE $1

0 commit comments

Comments
 (0)