logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

buffer_get_new_token_sa_pred - read token from buffer

Description

       buffer_get_token_sa_pred copies data from b to sa until predicate(sa) returns 1 or -1.

       If  predicate  returns  1  once  a  '\n' was read, that new-line character is still appended to sa -- use
       stralloc_chop or stralloc_chomp to get rid of it.  predicate can also return 0 (indicating further  input
       is  required  to  complete the token) or -1 (abort and return -1; use this if predicate wants to enfore a
       maximum message size or does timeout handling or detects a malformed message).

       If reading from the buffer or allocating memory fails, buffer_get_new_token_sa_pred returns -1  and  sets
       errno appropriately.  At that point sa may already contain a partial token.

       On success, buffer_get_new_token_sa_pred returns 0.

       If you want to read from a non-blocking socket, use buffer_get_token_sa_pred instead.

Name

       buffer_get_new_token_sa_pred - read token from buffer

See Also

buffer_getline_sa(3), buffer_get_token(3), buffer(3)

                                                                                 buffer_get_new_token_sa_pred(3)

Syntax

#include<libowfat/stralloc.h>#include<libowfat/buffer.h>

       int buffer_get_new_token_sa_pred(buffer* b,stralloc* sa,
                        int (*predicate)(stralloc* * sa));

See Also