1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
use crate::core::Regexp; use crate::ffi::InterpreterExtractError; use crate::Artichoke; impl Regexp for Artichoke { type Error = InterpreterExtractError; fn active_regexp_globals(&self) -> Result<usize, Self::Error> { let state = self.state.as_deref().ok_or_else(InterpreterExtractError::new)?; let count = state.regexp.active_regexp_globals(); Ok(count) } fn set_active_regexp_globals(&mut self, count: usize) -> Result<(), Self::Error> { let state = self.state.as_deref_mut().ok_or_else(InterpreterExtractError::new)?; state.regexp.set_active_regexp_globals(count); Ok(()) } fn clear_regexp(&mut self) -> Result<(), Self::Error> { let state = self.state.as_deref_mut().ok_or_else(InterpreterExtractError::new)?; state.regexp.clear(); Ok(()) } }