Adapted old code to fit new codebase

This commit is contained in:
2025-03-15 17:54:08 -04:00
parent d4f8f023af
commit 7f21e5baa7
5 changed files with 81 additions and 29 deletions

View File

@@ -1,6 +1,6 @@
use std::{collections::HashMap, sync::{LazyLock, RwLock, RwLockReadGuard, RwLockWriteGuard}};
use crate::{jobs::{wait_fg, attach_tty, take_term, Job, JobCmdFlags, JobID}, libsh::error::ShResult, prelude::*, procio::borrow_fd};
use crate::{jobs::{attach_tty, take_term, wait_fg, Job, JobCmdFlags, JobID}, libsh::error::ShResult, parse::lex::get_char, prelude::*, procio::borrow_fd};
pub static JOB_TABLE: LazyLock<RwLock<JobTab>> = LazyLock::new(|| RwLock::new(JobTab::new()));
@@ -237,6 +237,12 @@ impl VarTab {
&mut self.params
}
pub fn get_var(&self, var: &str) -> String {
if var.chars().count() == 1 {
let param = self.get_param(get_char(var, 0).unwrap());
if !param.is_empty() {
return param
}
}
if let Some(var) = self.vars.get(var).map(|s| s.to_string()) {
var
} else {