pub struct Config {
pub stone: String,
pub netldi: String,
pub host: String,
pub username: String,
pub password: String,
pub host_username: String,
pub host_password: String,
pub gem_service: String,
pub lib_path: Option<PathBuf>,
}Fields§
§stone: String§netldi: String§host: String§username: String§password: String§host_username: String§host_password: String§gem_service: String§lib_path: Option<PathBuf>Implementations§
Source§impl Config
impl Config
pub fn builder() -> ConfigBuilder
Sourcepub fn from_env() -> Result<Self>
pub fn from_env() -> Result<Self>
Examples found in repository?
More examples
examples/hello_gemstone.rs (line 10)
9fn main() -> gemstone_rs::Result<()> {
10 let config = Config::from_env()?;
11 println!("stone: {}", config.stone);
12 println!("host: {}", config.host);
13 println!("netldi: {}", config.netldi);
14 println!("username: {}", config.username);
15
16 let mut session = Session::login(config)?;
17 println!("session id: {}", session.session_id());
18 println!("3 + 4 => {:?}", session.eval("3 + 4")?);
19 session.logout()?;
20 Ok(())
21}examples/quickstart.rs (line 11)
10fn main() -> gemstone_rs::Result<()> {
11 let mut session = Session::login(Config::from_env()?)?;
12
13 let value = session.eval("3 + 4")?;
14 assert_eq!(value, Value::SmallInt(7));
15 println!("GemStone eval ok: {value:?}");
16
17 let key = "GemStoneRsQuickstart";
18 let text = session.new_string("hello from gemstone-rs quickstart")?;
19 session.global_put(key, text)?;
20
21 let stored = session.global_get(key)?;
22 println!("{key}: {}", session.fetch_string(stored)?);
23
24 session.global_put(key, Oop::NIL)?;
25 session.logout()?;
26 Ok(())
27}examples/codegen_discover_mapping.rs (line 11)
10fn main() -> codegen::Result<()> {
11 let mut session = Session::login(Config::from_env()?)?;
12 let class_ref = codegen::ClassRef::parse("Object").expect("Object is a valid class reference");
13 let output = std::env::temp_dir()
14 .join(format!(
15 "gemstone-rs-discovered-mapping-{}",
16 std::process::id()
17 ))
18 .join("gemstone_wrappers.rs");
19
20 let config = codegen::discover_mapping(&mut session, output, "BookingDraft", &class_ref)?;
21 println!(
22 "discovered mapping config:\n{}",
23 codegen::config_source(&config)
24 );
25 Ok(())
26}examples/oop_values.rs (line 9)
8fn main() -> gemstone_rs::Result<()> {
9 let mut session = Session::login(Config::from_env()?)?;
10
11 let seven = session.value_to_oop(&Value::SmallInt(7))?;
12 let printed = session.perform_oop(seven, "printString", &[])?;
13 println!(
14 "small integer printString: {}",
15 session.fetch_string(printed)?
16 );
17
18 let text = session.new_string("retained by gemstone-rs")?;
19 {
20 let handle = session.retain_oop(text)?;
21 println!("retained string OOP: {}", handle.oop().raw());
22 handle.release()?;
23 }
24
25 let symbol = session.new_symbol("GemStoneRsExampleSymbol")?;
26 println!("new symbol OOP: {}", symbol.raw());
27 Ok(())
28}examples/codegen_discover.rs (line 11)
10fn main() -> codegen::Result<()> {
11 let mut session = Session::login(Config::from_env()?)?;
12 let class_ref = codegen::ClassRef::parse("Object").expect("Object is a valid class reference");
13 let output = std::env::temp_dir()
14 .join(format!("gemstone-rs-discovered-{}", std::process::id()))
15 .join("gemstone_wrappers.rs");
16
17 let config = codegen::discover(&mut session, output, &[class_ref])?;
18 println!("discovered config:\n{}", codegen::config_source(&config));
19 println!("discovered classes: {}", config.classes.len());
20 println!(
21 "first class method count: {}",
22 config
23 .classes
24 .first()
25 .map_or(0, |class| class.methods.len())
26 );
27
28 Ok(())
29}Additional examples can be found in:
pub fn stone_nrs(&self) -> String
Trait Implementations§
impl Eq for Config
impl StructuralPartialEq for Config
Auto Trait Implementations§
impl Freeze for Config
impl RefUnwindSafe for Config
impl Send for Config
impl Sync for Config
impl Unpin for Config
impl UnsafeUnpin for Config
impl UnwindSafe for Config
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more