(root)/
coreutils-9.4/
lib/
readtokens.h
       1  /* readtokens.h -- Functions for reading tokens from an input stream.
       2  
       3     Copyright (C) 1990-1991, 1999, 2001-2004, 2009-2023 Free Software
       4     Foundation, Inc.
       5  
       6     This program is free software: you can redistribute it and/or modify
       7     it under the terms of the GNU General Public License as published by
       8     the Free Software Foundation, either version 3 of the License, or
       9     (at your option) any later version.
      10  
      11     This program is distributed in the hope that it will be useful,
      12     but WITHOUT ANY WARRANTY; without even the implied warranty of
      13     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
      14     GNU General Public License for more details.
      15  
      16     You should have received a copy of the GNU General Public License
      17     along with this program.  If not, see <https://www.gnu.org/licenses/>.
      18  
      19     Written by Jim Meyering. */
      20  
      21  #ifndef READTOKENS_H
      22  # define READTOKENS_H
      23  
      24  # include <stdio.h>
      25  
      26  /* FIXME: This header should use idx_t, not size_t.  */
      27  
      28  struct tokenbuffer
      29  {
      30    size_t size;
      31    char *buffer;
      32  };
      33  typedef struct tokenbuffer token_buffer;
      34  
      35  void init_tokenbuffer (token_buffer *tokenbuffer);
      36  
      37  size_t
      38    readtoken (FILE *stream, const char *delim, size_t n_delim,
      39               token_buffer *tokenbuffer);
      40  size_t
      41    readtokens (FILE *stream, size_t projected_n_tokens,
      42                const char *delim, size_t n_delim,
      43                char ***tokens_out, size_t **token_lengths);
      44  
      45  #endif /* not READTOKENS_H */