teamy-figue 2.0.1

Type-safe CLI arguments, config files, and environment variables powered by Facet reflection
Documentation
---
source: crates/figue/src/schema/tests.rs
expression: "facet_json :: to_string_pretty(& value).unwrap()"
---
{
  "docs": {},
  "args": {
    "args": {
      "verbose": {
        "name": "verbose",
        "docs": {
          "summary": "Verbose output"
        },
        "kind": {
          "Named": {
            "short": "v"
          }
        },
        "value": {
          "Leaf": {
            "kind": {
              "Scalar": "Bool"
            }
          }
        }
      },
      "input": {
        "name": "input",
        "docs": {
          "summary": "Input file"
        },
        "kind": "Positional",
        "value": {
          "Leaf": {
            "kind": {
              "Scalar": "String"
            }
          }
        },
        "required": true
      },
      "include": {
        "name": "include",
        "docs": {
          "summary": "Include list"
        },
        "kind": {
          "Named": {}
        },
        "value": {
          "Vec": {
            "element": {
              "Leaf": {
                "kind": {
                  "Scalar": "String"
                }
              }
            }
          }
        },
        "required": true,
        "multiple": true
      },
      "quiet": {
        "name": "quiet",
        "docs": {
          "summary": "Quiet count"
        },
        "kind": {
          "Named": {
            "short": "q",
            "counted": true
          }
        },
        "value": {
          "Leaf": {
            "kind": {
              "Scalar": "Integer"
            }
          }
        },
        "multiple": true
      }
    },
    "subcommands": {
      "Build": {
        "name": "build",
        "effective_name": "Build",
        "docs": {
          "summary": "Build stuff"
        },
        "args": {
          "args": {
            "release": {
              "name": "release",
              "docs": {
                "summary": "Release build"
              },
              "kind": {
                "Named": {
                  "short": "r"
                }
              },
              "value": {
                "Leaf": {
                  "kind": {
                    "Scalar": "Bool"
                  }
                }
              }
            }
          },
          "subcommands": {}
        },
        "is_flattened_tuple": true
      },
      "clean-all": {
        "name": "clean-all",
        "effective_name": "clean-all",
        "docs": {
          "summary": "Clean"
        },
        "args": {
          "args": {},
          "subcommands": {}
        }
      }
    },
    "subcommand_field_name": "command",
    "subcommand_optional": true
  },
  "config": {
    "field_name": "config",
    "env_prefix": "APP",
    "fields": {
      "host": {
        "docs": {},
        "value": {
          "Leaf": {
            "kind": {
              "Scalar": "String"
            }
          }
        }
      },
      "port": {
        "docs": {},
        "value": {
          "Leaf": {
            "kind": {
              "Scalar": "Integer"
            }
          }
        }
      }
    }
  },
  "special": {}
}