X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=bindings%2Fruby%2Fthread.c;h=9b295981801779e1d970972d595b60eec1c4d5c6;hp=efe5aaf7c56a8946325bd71161d14325e834aaa5;hb=a35040eec7465b60e820e70582fb264ce81e1f3b;hpb=05dddf883dd762420bb8e6b86790e68d734fd568 diff --git a/bindings/ruby/thread.c b/bindings/ruby/thread.c index efe5aaf7..9b295981 100644 --- a/bindings/ruby/thread.c +++ b/bindings/ruby/thread.c @@ -13,7 +13,7 @@ * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License - * along with this program. If not, see http://www.gnu.org/licenses/ . + * along with this program. If not, see https://www.gnu.org/licenses/ . * * Author: Ali Polatel */ @@ -91,6 +91,26 @@ notmuch_rb_thread_get_toplevel_messages (VALUE self) return Data_Wrap_Struct (notmuch_rb_cMessages, NULL, NULL, messages); } +/* + * call-seq: THREAD.messages => MESSAGES + * + * Get a Notmuch::Messages iterator for the all messages in thread. + */ +VALUE +notmuch_rb_thread_get_messages (VALUE self) +{ + notmuch_messages_t *messages; + notmuch_thread_t *thread; + + Data_Get_Notmuch_Thread (self, thread); + + messages = notmuch_thread_get_messages (thread); + if (!messages) + rb_raise (notmuch_rb_eMemoryError, "Out of memory"); + + return Data_Wrap_Struct (notmuch_rb_cMessages, NULL, NULL, messages); +} + /* * call-seq: THREAD.matched_messages => fixnum *