Expose pat, block, stmt parsers
diff --git a/src/expr.rs b/src/expr.rs
index dfca207..d747625 100644
--- a/src/expr.rs
+++ b/src/expr.rs
@@ -831,7 +831,7 @@
 
     named!(pub within_block -> Vec<Stmt>, do_parse!(
         many0!(punct!(";")) >>
-        mut standalone: many0!(terminated!(standalone_stmt, many0!(punct!(";")))) >>
+        mut standalone: many0!(terminated!(stmt, many0!(punct!(";")))) >>
         last: option!(expr) >>
         (match last {
             None => standalone,
@@ -842,7 +842,7 @@
         })
     ));
 
-    named!(standalone_stmt -> Stmt, alt!(
+    named!(pub stmt -> Stmt, alt!(
         stmt_mac
         |
         stmt_local
diff --git a/src/lib.rs b/src/lib.rs
index 6bdef5f..b80934b 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -182,7 +182,7 @@
     pub use item::parsing::item;
 
     #[cfg(feature = "full")]
-    pub use expr::parsing::expr;
+    pub use expr::parsing::{expr, pat, block, stmt};
 
     pub use lit::parsing::{lit, string, byte_string, byte, character, float, int, boolean};