summaryrefslogtreecommitdiffstats
path: root/third_party/rust/nom/tests/reborrow_fold.rs
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/rust/nom/tests/reborrow_fold.rs')
-rw-r--r--third_party/rust/nom/tests/reborrow_fold.rs18
1 files changed, 18 insertions, 0 deletions
diff --git a/third_party/rust/nom/tests/reborrow_fold.rs b/third_party/rust/nom/tests/reborrow_fold.rs
new file mode 100644
index 0000000000..b53555b074
--- /dev/null
+++ b/third_party/rust/nom/tests/reborrow_fold.rs
@@ -0,0 +1,18 @@
+#![allow(dead_code)]
+#![allow(unused_variables)]
+
+#[macro_use]
+extern crate nom;
+
+use std::str;
+
+named_args!(atom<'a>(tomb: &'a mut ())<String>,
+ map!(map_res!(is_not!(" \t\r\n()"), str::from_utf8), ToString::to_string));
+
+/*FIXME: should we support the use case of borrowing data mutably in a parser?
+named_args!(list<'a>(tomb: &'a mut ())<String>,
+ delimited!(
+ char!('('),
+ fold_many0!(call!(atom, tomb), "".to_string(), |acc: String, next: String| acc + next.as_str()),
+ char!(')')));
+*/