tri.c 463 B

123456789101112131415161718192021222324252627282930
  1. /*
  2. * tri.c
  3. */
  4. #include "lub/types.h"
  5. #include "lub/string.h"
  6. tri_t lub_tri_from_string(const char *s) {
  7. if(lub_string_nocasecmp(s, "true") == 0) {
  8. return TRI_TRUE;
  9. } else if(lub_string_nocasecmp(s, "false") == 0) {
  10. return TRI_FALSE;
  11. } else {
  12. return TRI_UNDEFINED;
  13. }
  14. }
  15. bool_t lub_tri_default(tri_t t, bool_t d)
  16. {
  17. switch(t) {
  18. case TRI_TRUE:
  19. return BOOL_TRUE;
  20. case TRI_FALSE:
  21. return BOOL_FALSE;
  22. case TRI_UNDEFINED:
  23. default:
  24. return d;
  25. }
  26. }