aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/shirabe-external-packages/src/symfony/console/helper/helper_set.rs
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2026-06-11 02:39:35 +0900
committernsfisis <nsfisis@gmail.com>2026-06-11 02:39:35 +0900
commit6ae7e0d4b3eaf20e2d2cd3d000cf61ab0c9b6e83 (patch)
treee39261f4aa7314fe8c75142670c76591cdaccb92 /crates/shirabe-external-packages/src/symfony/console/helper/helper_set.rs
parent5d3232a80be4b989e89cc7ae4e3642cc5acae030 (diff)
downloadphp-shirabe-6ae7e0d4b3eaf20e2d2cd3d000cf61ab0c9b6e83.tar.gz
php-shirabe-6ae7e0d4b3eaf20e2d2cd3d000cf61ab0c9b6e83.tar.zst
php-shirabe-6ae7e0d4b3eaf20e2d2cd3d000cf61ab0c9b6e83.zip
feat(console): resolve phase-b TODOs in doRun and IO wiring
Wire up ConsoleIO with HelperSet/QuestionHelper, register the ErrorHandler with the IO instance, and fall back to a default output in run(). Replace resolved phase-b TODOs across the console, command, io, factory, installer, dependency_resolver, and util modules; reclassify the remaining blockers (typed Symfony command registry, stdin resource caching) as phase-c. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Diffstat (limited to 'crates/shirabe-external-packages/src/symfony/console/helper/helper_set.rs')
-rw-r--r--crates/shirabe-external-packages/src/symfony/console/helper/helper_set.rs15
1 files changed, 10 insertions, 5 deletions
diff --git a/crates/shirabe-external-packages/src/symfony/console/helper/helper_set.rs b/crates/shirabe-external-packages/src/symfony/console/helper/helper_set.rs
index 26af492..e38dbf3 100644
--- a/crates/shirabe-external-packages/src/symfony/console/helper/helper_set.rs
+++ b/crates/shirabe-external-packages/src/symfony/console/helper/helper_set.rs
@@ -1,18 +1,23 @@
-use shirabe_php_shim::PhpMixed;
+use crate::symfony::console::helper::HelperInterface;
+use indexmap::IndexMap;
+use std::cell::RefCell;
+use std::rc::Rc;
#[derive(Debug)]
-pub struct HelperSet;
+pub struct HelperSet {
+ helpers: IndexMap<String, Rc<RefCell<dyn HelperInterface>>>,
+}
impl HelperSet {
- pub fn new(_helpers: Vec<PhpMixed>) -> Self {
+ pub fn new(_helpers: Vec<Rc<RefCell<dyn HelperInterface>>>) -> Self {
todo!()
}
- pub fn get(&self, _name: &str) -> PhpMixed {
+ pub fn get<T: HelperInterface + 'static>(&self, _name: &str) -> Rc<RefCell<T>> {
todo!()
}
- pub fn set(&mut self, _helper: PhpMixed, _alias: Option<&str>) {
+ pub fn set(&mut self, _helper: Rc<RefCell<dyn HelperInterface>>, _alias: Option<&str>) {
todo!()
}