我希望能够使用此枚举定义:
goalStatus:
type: string
enum:
- ACTIVE
- COMPLETED
- FULFILLED
- DELETED
...然而,在参数定义内部,我不断得到错误:
get:
description: Returns all goals for a customer
operationId: listGoals
parameters:
- name: status
in: query
description: filter by goal status
required: false
schema:
$ref: "#/definitions/goalStatus"
错误:
Swager错误:不是有效的参数定义
不幸的是,OpenAPI 2.0(fka. Swagger)没有使用模式对象定义查询
参数。因此,您不能使用对goalState
定义的引用(它适用于主体参数)。
您可以做的是定义一个可重用的参数,但是如果您想在其他定义中重用这个枚举,您必须定义它两次(一次在定义中,一次在参数中)。即将到来的OpenAPI 3.0版本通过允许用模式定义所有参数类型来解决这个问题。
下面是使用可重用参数的 2.0 版示例:
swagger: '2.0'
info:
version: 1.0.0
title: Parameter with enum example
paths:
/goals:
get:
description: Returns all goals for a customer
operationId: listGoals
parameters:
- $ref: "#/parameters/goalFilter"
responses:
200:
description: OK
parameters:
goalFilter:
name: status
in: query
description: filter by goal status
required: false
type: string
enum:
- ACTIVE
- COMPLETED
- FULFILLED
- DELETED
我想使用中定义的枚举作为查询字符串中参数定义的一部分。 我在我的Swagger 2.0规范文件的< code>definitions部分定义了Swagger枚举。 我可以在其他定义中创建对它的引用: 当参数在:body中为中为
问题内容: 我以为我很了解Java泛型,但是随后在java.lang.Enum中遇到了以下内容: 有人可以解释如何解释此类型参数吗?奖励点,用于提供可以使用类似类型参数的其他示例。 问题答案: 这意味着枚举的类型参数必须从本身具有相同类型参数的枚举派生。怎么会这样 通过使类型参数成为新类型本身。因此,如果我有一个名为StatusCode的枚举,则它等效于: 现在,如果你检查的限制,我们已经得到了-
让我们看看一个需要诉诸于代码的场景,来考虑为何此时使用枚举更为合适且实用。假设我们要处理 IP 地址。目前被广泛使用的两个主要 IP 标准:IPv4(version four)和 IPv6(version six)。这是我们的程序可能会遇到的所有可能的 IP 地址类型:所以可以 枚举 出所有可能的值,这也正是此枚举名字的由来。 任何一个 IP 地址要么是 IPv4 的要么是 IPv6 的,而且不能
问题内容: 我有一个通过ctypes访问的结构: 到目前为止,我有类似以下的Python代码: 但是我不确定该用什么枚举。我应该将其映射到a还是? 问题答案: 至少对于GCC来说,只是一个简单的数字类型。它可以是8位,16位,32位,64位或其他任何值(我已经用64位值对其进行了测试)以及或。我猜它不能超过,但是实际上你应该检查你的范围并选择类似。 这是一个例子。C程序: 和Python之一:
我有以下endpoint 和下面的用注释 我希望,
enum 关键字允许创建一个代表数个可能变量的数据的类型(原文:The enum keyword allows the creation of a type which may be one of a few different variants.若您对此句有 更好的翻译或理解,希望指出来,谢谢。)。在 struct 中任何合法的变量在 enum 同样是合法的。 // 隐藏未使用代码警告的属性。