summaryrefslogtreecommitdiffstats
path: root/vendor/handlebars/src/util.rs
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/handlebars/src/util.rs')
-rw-r--r--vendor/handlebars/src/util.rs25
1 files changed, 25 insertions, 0 deletions
diff --git a/vendor/handlebars/src/util.rs b/vendor/handlebars/src/util.rs
new file mode 100644
index 000000000..7bfca24ce
--- /dev/null
+++ b/vendor/handlebars/src/util.rs
@@ -0,0 +1,25 @@
+pub(crate) fn empty_or_none<T>(input: &[T]) -> Option<&[T]> {
+ if input.is_empty() {
+ None
+ } else {
+ Some(input)
+ }
+}
+
+#[inline]
+pub(crate) fn copy_on_push_vec<T>(input: &[T], el: T) -> Vec<T>
+where
+ T: Clone,
+{
+ let mut new_vec = Vec::with_capacity(input.len() + 1);
+ new_vec.extend_from_slice(input);
+ new_vec.push(el);
+ new_vec
+}
+
+#[inline]
+pub(crate) fn extend(base: &mut Vec<String>, slice: &[String]) {
+ for i in slice {
+ base.push(i.to_owned());
+ }
+}