diff --git a/examples/glue.c b/examples/glue.c
index de5f1e7b43d8c60e85ffdc987ee2ee7e88a26279..02087d4cee93718b2510b614a31211267deb882f 100644
--- a/examples/glue.c
+++ b/examples/glue.c
@@ -121,6 +121,13 @@ size_t h_seq_len(const HParsedToken *p)
   return p->seq->used;
 }
 
+HParsedToken **h_seq_elements(const HParsedToken *p)
+{
+  assert(p != NULL);
+  assert(p->token_type == TT_SEQUENCE);
+  return p->seq->elements;
+}
+
 HParsedToken *h_seq_index(const HParsedToken *p, size_t i)
 {
   assert(p != NULL);
diff --git a/examples/glue.h b/examples/glue.h
index 568cbda09ae3c4bb7ba4b55d7db9800c01fdc714..b3866251213b469165cedd94f5aa7f2a3af95d6c 100644
--- a/examples/glue.h
+++ b/examples/glue.h
@@ -77,8 +77,11 @@ uint64_t       h_cast_uint (const HParsedToken *p);
 // Return the length of a sequence.
 size_t h_seq_len(const HParsedToken *p);
 
+// Access a sequence's element array.
+HParsedToken **h_seq_elements(const HParsedToken *p);
+
 // Access a sequence element by index.
-HParsedToken * h_seq_index(const HParsedToken *p, size_t i);
+HParsedToken *h_seq_index(const HParsedToken *p, size_t i);
 
 // Convenience functions combining index access and h_cast_*.
 HCountedArray *h_seq_index_seq  (const HParsedToken *p, size_t i);