(ctx: &mut ScriptContext<'_, API>)
| 3642 | .iter() |
| 3643 | .find(|(name, _)| name.as_ref() == field) |
| 3644 | .map(|(_, value)| value) |
| 3645 | .or_else(|| { |
| 3646 | data.base_ref() |
| 3647 | .and_then(|base| scene_field_value(base, field)) |
| 3648 | }) |
| 3649 | } |
| 3650 | |
| 3651 | pub fn file_row_state_prefix( |
| 3652 | path: &str, |
| 3653 | open_paths: &[String], |
| 3654 | dirty_scene_paths: &[String], |
| 3655 | ) -> &'static str { |
| 3656 | let dirty = dirty_scene_paths.iter().any(|dirty| dirty == path); |
| 3657 | if dirty { "* " } else { "" } |
| 3658 | } |
| 3659 | |
| 3660 | pub fn file_row_disclosure(path: &str, expanded_paths: &[String]) -> RowIndicator { |
| 3661 | if path.ends_with('/') { |
| 3662 | if expanded_paths.iter().any(|item| item == path) { |
nothing calls this directly
no test coverage detected