+ struct repeat_block *block
+ = UP_CAST (interface, struct repeat_block, parent);
+ return (block->cur_line != ll_null (&block->lines)
+ ? ll_data (block->cur_line, struct repeat_line, ll)
+ : NULL);
+}
+
+/* Function called by getl to read a line. Puts the line in
+ OUTPUT and its syntax mode in *SYNTAX. Returns true if a line
+ was obtained, false if the source is exhausted. */
+static bool
+do_repeat_read (struct getl_interface *interface,
+ struct string *output)
+{
+ struct repeat_block *block
+ = UP_CAST (interface, struct repeat_block, parent);
+ struct repeat_line *line;