| 169 | } |
| 170 | |
| 171 | fn diff_changes_full_content_contains(values: &[Box<dyn Value>]) -> Box<dyn Value> { |
| 172 | if let Some(changes) = values[0].as_any().downcast_ref::<DiffChangesValue>() { |
| 173 | let str = values[1].as_text().unwrap(); |
| 174 | let mut content = String::new(); |
| 175 | for change in changes.changes.iter() { |
| 176 | content += &String::from_utf8_lossy(&change.content); |
| 177 | } |
| 178 | |
| 179 | return Box::new(BoolValue::new(content.contains(&str))); |
| 180 | } |
| 181 | Box::new(BoolValue::new_false()) |
| 182 | } |
| 183 | |
| 184 | fn diff_changes_added_content_contains(values: &[Box<dyn Value>]) -> Box<dyn Value> { |
| 185 | if let Some(changes) = values[0].as_any().downcast_ref::<DiffChangesValue>() { |