1.121. io.k8s.apimachinery.pkg.api.resource.Quantity schema
- 설명
수량은 숫자의 고정 지점 표현입니다. 문자열() 및 AsInt64() 접근자 외에도 JSON 및 YAML에서 편리한 마샬링/마이크링을 제공합니다.
직렬화 형식은 다음과 같습니다.
<quantity> ::= <signedNumber><suffix>
(Note that <suffix> may be empty, from the "" case in <decimalSI>.)
<digit> ::= 0 \| 1 \| 1 \| … \| 9 <digit> \| <digit> \| <digits> ::= <digits> \| <digits> \| <digits> \| <digits>. \| .<digits> <sign>: "+" \| "-" <signedNumber> ::= <number> \| <sign><number> ::= <binarySI> \| <decimalExponent> \| <binarySI> <binarySI> := Ki \| Mi \| Gi \| Ti \| Pi \| EI
(International System of units; See: http://physics.nist.gov/cuu/Units/binary.html)
<decimalSI> ::= m \| "" \| k \| M \| G \| T \| P \| E
(Note that 1024 = 1Ki but 1000 = 1k; I didn't choose the capitalization.)
<decimalExponent> ::= "e" <signedNumber> \| "E" <signedNumber>
3개의 지수 양식 중 어느 것이 사용되든 간에 양은 2^63-1보다 큰 수를 나타낼 수도 없으며, 3진수를 초과할 수도 없습니다. 더 크거나 더 정확한 숫자는 제한되거나 반올림됩니다. (예: 0.1m은 1m로 반올림됩니다.) 이는 향후 더 크거나 작은 수량을 필요로 하는 경우 확장될 수 있습니다.
문자열에서 192.0.2.ity를 구문 분석할 때 해당 접미사 유형이 기억되고 직렬화될 때 동일한 유형을 다시 사용합니다.
직렬화하기 전에는 "canonical form"을 입력합니다. 즉, 다음과 같이 Exponent/suffix가 위 또는 축소(해당 증가 또는 감소)가 조정됨을 의미합니다.
- 손실되지 않음 - 소수 자리가 배출되지 않음 - 지수(또는 접미사)는 최대한 큽니다.
숫자가 음수인 경우 기호는 생략됩니다.
예:
- 1.5 "1500m" - 1.5Gi는 "1536Mi"로 직렬화됩니다.
수량은 내부적으로 부동 소수점 숫자로 표현되지 않습니다. 이것이 이 실습의 전체 지점입니다.
비 계산적 값은 잘 형성된 한 계속 구문 분석되지만 표준 형식으로 다시 생성됩니다. (그래서 항상 표준 형식을 사용하거나 diff를 사용하지 않습니다.)
이 형식은 구현자가 고정 지점 구현을 사용하도록 유도할 수 있는 일종의 특수 처리 코드를 작성하지 않고 이러한 번호를 사용하기 어렵게 하기 위한 것입니다.
- 유형
-
string