/* STACKIT IaaS API This API allows you to create and modify IaaS resources. API version: 2beta1 */ // Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. package iaasbeta import ( "encoding/json" ) // checks if the Quota type satisfies the MappedNullable interface at compile time var _ MappedNullable = &Quota{} /* types and functions for limit */ // isLong type QuotaGetLimitAttributeType = *int64 type QuotaGetLimitArgType = int64 type QuotaGetLimitRetType = int64 func getQuotaGetLimitAttributeTypeOk(arg QuotaGetLimitAttributeType) (ret QuotaGetLimitRetType, ok bool) { if arg == nil { return ret, false } return *arg, true } func setQuotaGetLimitAttributeType(arg *QuotaGetLimitAttributeType, val QuotaGetLimitRetType) { *arg = &val } /* types and functions for usage */ // isLong type QuotaGetUsageAttributeType = *int64 type QuotaGetUsageArgType = int64 type QuotaGetUsageRetType = int64 func getQuotaGetUsageAttributeTypeOk(arg QuotaGetUsageAttributeType) (ret QuotaGetUsageRetType, ok bool) { if arg == nil { return ret, false } return *arg, true } func setQuotaGetUsageAttributeType(arg *QuotaGetUsageAttributeType, val QuotaGetUsageRetType) { *arg = &val } // Quota Object that represents a single resource quota. type Quota struct { // REQUIRED Limit QuotaGetLimitAttributeType `json:"limit" required:"true"` // REQUIRED Usage QuotaGetUsageAttributeType `json:"usage" required:"true"` } type _Quota Quota // NewQuota instantiates a new Quota object // This constructor will assign default values to properties that have it defined, // and makes sure properties required by API are set, but the set of arguments // will change when the set of required properties is changed func NewQuota(limit QuotaGetLimitArgType, usage QuotaGetUsageArgType) *Quota { this := Quota{} setQuotaGetLimitAttributeType(&this.Limit, limit) setQuotaGetUsageAttributeType(&this.Usage, usage) return &this } // NewQuotaWithDefaults instantiates a new Quota object // This constructor will only assign default values to properties that have it defined, // but it doesn't guarantee that properties required by API are set func NewQuotaWithDefaults() *Quota { this := Quota{} return &this } // GetLimit returns the Limit field value func (o *Quota) GetLimit() (ret QuotaGetLimitRetType) { ret, _ = o.GetLimitOk() return ret } // GetLimitOk returns a tuple with the Limit field value // and a boolean to check if the value has been set. func (o *Quota) GetLimitOk() (ret QuotaGetLimitRetType, ok bool) { return getQuotaGetLimitAttributeTypeOk(o.Limit) } // SetLimit sets field value func (o *Quota) SetLimit(v QuotaGetLimitRetType) { setQuotaGetLimitAttributeType(&o.Limit, v) } // GetUsage returns the Usage field value func (o *Quota) GetUsage() (ret QuotaGetUsageRetType) { ret, _ = o.GetUsageOk() return ret } // GetUsageOk returns a tuple with the Usage field value // and a boolean to check if the value has been set. func (o *Quota) GetUsageOk() (ret QuotaGetUsageRetType, ok bool) { return getQuotaGetUsageAttributeTypeOk(o.Usage) } // SetUsage sets field value func (o *Quota) SetUsage(v QuotaGetUsageRetType) { setQuotaGetUsageAttributeType(&o.Usage, v) } func (o Quota) ToMap() (map[string]interface{}, error) { toSerialize := map[string]interface{}{} if val, ok := getQuotaGetLimitAttributeTypeOk(o.Limit); ok { toSerialize["Limit"] = val } if val, ok := getQuotaGetUsageAttributeTypeOk(o.Usage); ok { toSerialize["Usage"] = val } return toSerialize, nil } type NullableQuota struct { value *Quota isSet bool } func (v NullableQuota) Get() *Quota { return v.value } func (v *NullableQuota) Set(val *Quota) { v.value = val v.isSet = true } func (v NullableQuota) IsSet() bool { return v.isSet } func (v *NullableQuota) Unset() { v.value = nil v.isSet = false } func NewNullableQuota(val *Quota) *NullableQuota { return &NullableQuota{value: val, isSet: true} } func (v NullableQuota) MarshalJSON() ([]byte, error) { return json.Marshal(v.value) } func (v *NullableQuota) UnmarshalJSON(src []byte) error { v.isSet = true return json.Unmarshal(src, &v.value) }