#include "config.h" #include #include /** * lstack - Simple, singly-linked-list stack implementation * * This code provides a simple implementation of the Stack abstract * data type in terms of a singly linked list. * * License: BSD-MIT * Author: David Gibson * * Example: * #include * * struct arg { * const char *arg; * struct lstack_link sl; * }; * * int main(int argc, char *argv[]) * { * int i; * struct arg *a; * LSTACK(struct arg, sl) argstack; * * for (i = 0; i < argc; i++) { * a = malloc(sizeof(*a)); * a->arg = argv[i]; * lstack_push(&argstack, a); * } * * printf("Command line arguments in reverse:\n"); * * while (!lstack_empty(&argstack)) { * a = lstack_pop(&argstack); * printf("Argument: %s\n", a->arg); * free(a); * } * * return 0; * } */ int main(int argc, char *argv[]) { /* Expect exactly one argument */ if (argc != 2) return 1; if (strcmp(argv[1], "depends") == 0) { printf("ccan/tcon\n"); return 0; } return 1; }