pub fn parse_default_value(default_str: &str) -> DefaultValueExpand description
Parse PostgreSQL default value expression
This function parses PostgreSQL default value strings and returns a structured representation.
ยงExamples
use senax_pgsql_parser::{parse_default_value, DefaultValue};
// String with escaped quotes
let result = parse_default_value("'it''s a test'::character varying");
assert_eq!(result, DefaultValue::String("it's a test".to_string()));
// Simple string
let result = parse_default_value("'simple'::text");
assert_eq!(result, DefaultValue::String("simple".to_string()));
// Integer
let result = parse_default_value("42");
assert_eq!(result, DefaultValue::Integer(42));
// Float
let result = parse_default_value("99.99");
assert_eq!(result, DefaultValue::Float(99.99));
// Boolean
let result = parse_default_value("true");
assert_eq!(result, DefaultValue::Boolean(true));
// NULL
let result = parse_default_value("NULL");
assert_eq!(result, DefaultValue::Null);
// Current timestamp
let result = parse_default_value("CURRENT_TIMESTAMP");
assert_eq!(result, DefaultValue::CurrentTimestamp);
// Current date
let result = parse_default_value("CURRENT_DATE");
assert_eq!(result, DefaultValue::CurrentDate);
// Sequence
let result = parse_default_value("nextval('test_seq'::regclass)");
assert_eq!(result, DefaultValue::Expression("nextval('test_seq'::regclass)".to_string()));