quickjs-tart

quickjs-based runtime for wallet-core logic
Log | Files | Refs | README | LICENSE

ares_getopt.h (2300B)


      1 #ifndef ARES_GETOPT_H
      2 #define ARES_GETOPT_H
      3 
      4 /*
      5  * Copyright (c) 1987-2001 The Regents of the University of California.
      6  * All rights reserved.
      7  *
      8  * Redistribution and use in source and binary forms, with or without
      9  * modification, are permitted provided that the following conditions are met:
     10  *
     11  * A. Redistributions of source code must retain the above copyright notice,
     12  *    this list of conditions and the following disclaimer.
     13  * B. Redistributions in binary form must reproduce the above copyright notice,
     14  *    this list of conditions and the following disclaimer in the documentation
     15  *    and/or other materials provided with the distribution.
     16  * C. Neither the names of the copyright holders nor the names of its
     17  *    contributors may be used to endorse or promote products derived from this
     18  *    software without specific prior written permission.
     19  *
     20  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS
     21  * IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
     22  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
     23  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE
     24  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
     25  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
     26  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
     27  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
     28  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
     29  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
     30  * POSSIBILITY OF SUCH DAMAGE.
     31  *
     32  * SPDX-License-Identifier: BSD-3-Clause
     33  */
     34 
     35 
     36 typedef struct {
     37   const char         *optarg; /* argument associated with option */
     38   int                 optind; /* index into parent argv vector */
     39   int                 opterr; /* if error message should be printed */
     40   int                 optopt; /* character checked for validity */
     41   const char         *place;
     42   int                 argc;
     43   const char * const *argv;
     44 } ares_getopt_state_t;
     45 
     46 void ares_getopt_init(ares_getopt_state_t *state, int argc,
     47                       const char * const *argv);
     48 int  ares_getopt(ares_getopt_state_t *state, const char *ostr);
     49 
     50 #endif /* ARES_GETOPT_H */