1// Copyright 2019 Google LLC.
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//     http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14//
15
16// Code generated by protoc-gen-go. DO NOT EDIT.
17// versions:
18// 	protoc-gen-go v1.26.0
19// 	protoc        v3.12.2
20// source: google/actions/type/datetime_range.proto
21
22package date_time_range
23
24import (
25	reflect "reflect"
26	sync "sync"
27
28	datetime "google.golang.org/genproto/googleapis/type/datetime"
29	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
30	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
31)
32
33const (
34	// Verify that this generated code is sufficiently up-to-date.
35	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
36	// Verify that runtime/protoimpl is sufficiently up-to-date.
37	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
38)
39
40// Represents a date and time range. This can represent:
41//
42// * A range between points in time with time zone or offset, e.g. the duration
43//   of a flight which starts in the "America/New_York" time zone and ends in
44//   the "Australia/Sydney" time zone
45// * A range between points in time without time zone/offset info, e.g. an
46//   appointment in local time
47// * A range starting at a specific date and time, e.g. the range of time which
48//   can be measured in milliseconds since the Unix epoch (period starting with
49//   1970-01-01T00:00:00Z)
50// * A range ending at a specific date and time, e.g. range of time before
51//   a deadline
52//
53// When considering whether a DateTime falls within a DateTimeRange, the start
54// of the range is inclusive and the end is exclusive.
55//
56// While [google.type.DateTime][google.type.DateTime] allows zero years, DateTimeRange does not.
57// Year must always be non-zero.
58//
59// When both start and end are set, either both or neither must have a
60// time_offset. When set, time_offset can be specified by either utc_offset or
61// time_zone and must match for start and end, that is if start has utc_offset
62// set then end must also have utc_offset set. The values of utc_offset or
63// time_zone need not be the same for start and end.
64//
65// When both start and end are set, start must be chronologically less than or
66// equal to end. When start and end are equal, the range is empty.
67//
68// The semantics of start and end are the same as those of
69// [google.type.DateTime][google.type.DateTime].
70type DateTimeRange struct {
71	state         protoimpl.MessageState
72	sizeCache     protoimpl.SizeCache
73	unknownFields protoimpl.UnknownFields
74
75	// DateTime at which the date range begins. If unset, the range has no
76	// beginning bound.
77	Start *datetime.DateTime `protobuf:"bytes,1,opt,name=start,proto3" json:"start,omitempty"`
78	// DateTime at which the date range ends. If unset, the range has no ending
79	// bound.
80	End *datetime.DateTime `protobuf:"bytes,2,opt,name=end,proto3" json:"end,omitempty"`
81}
82
83func (x *DateTimeRange) Reset() {
84	*x = DateTimeRange{}
85	if protoimpl.UnsafeEnabled {
86		mi := &file_google_actions_type_datetime_range_proto_msgTypes[0]
87		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
88		ms.StoreMessageInfo(mi)
89	}
90}
91
92func (x *DateTimeRange) String() string {
93	return protoimpl.X.MessageStringOf(x)
94}
95
96func (*DateTimeRange) ProtoMessage() {}
97
98func (x *DateTimeRange) ProtoReflect() protoreflect.Message {
99	mi := &file_google_actions_type_datetime_range_proto_msgTypes[0]
100	if protoimpl.UnsafeEnabled && x != nil {
101		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
102		if ms.LoadMessageInfo() == nil {
103			ms.StoreMessageInfo(mi)
104		}
105		return ms
106	}
107	return mi.MessageOf(x)
108}
109
110// Deprecated: Use DateTimeRange.ProtoReflect.Descriptor instead.
111func (*DateTimeRange) Descriptor() ([]byte, []int) {
112	return file_google_actions_type_datetime_range_proto_rawDescGZIP(), []int{0}
113}
114
115func (x *DateTimeRange) GetStart() *datetime.DateTime {
116	if x != nil {
117		return x.Start
118	}
119	return nil
120}
121
122func (x *DateTimeRange) GetEnd() *datetime.DateTime {
123	if x != nil {
124		return x.End
125	}
126	return nil
127}
128
129var File_google_actions_type_datetime_range_proto protoreflect.FileDescriptor
130
131var file_google_actions_type_datetime_range_proto_rawDesc = []byte{
132	0x0a, 0x28, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73,
133	0x2f, 0x74, 0x79, 0x70, 0x65, 0x2f, 0x64, 0x61, 0x74, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x72,
134	0x61, 0x6e, 0x67, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x13, 0x67, 0x6f, 0x6f, 0x67,
135	0x6c, 0x65, 0x2e, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x1a,
136	0x1a, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x2f, 0x64, 0x61, 0x74,
137	0x65, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x65, 0x0a, 0x0d, 0x44,
138	0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x2b, 0x0a, 0x05,
139	0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x67, 0x6f,
140	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x44, 0x61, 0x74, 0x65, 0x54, 0x69,
141	0x6d, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0x27, 0x0a, 0x03, 0x65, 0x6e, 0x64,
142	0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
143	0x74, 0x79, 0x70, 0x65, 0x2e, 0x44, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x52, 0x03, 0x65,
144	0x6e, 0x64, 0x42, 0x83, 0x01, 0x0a, 0x17, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
145	0x65, 0x2e, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x42, 0x12,
146	0x44, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x72, 0x6f,
147	0x74, 0x6f, 0x50, 0x01, 0x5a, 0x4a, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f, 0x6c,
148	0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
149	0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x74, 0x79, 0x70, 0x65,
150	0x2f, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65,
151	0x3b, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65,
152	0xa2, 0x02, 0x05, 0x41, 0x4f, 0x47, 0x54, 0x50, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
153}
154
155var (
156	file_google_actions_type_datetime_range_proto_rawDescOnce sync.Once
157	file_google_actions_type_datetime_range_proto_rawDescData = file_google_actions_type_datetime_range_proto_rawDesc
158)
159
160func file_google_actions_type_datetime_range_proto_rawDescGZIP() []byte {
161	file_google_actions_type_datetime_range_proto_rawDescOnce.Do(func() {
162		file_google_actions_type_datetime_range_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_actions_type_datetime_range_proto_rawDescData)
163	})
164	return file_google_actions_type_datetime_range_proto_rawDescData
165}
166
167var file_google_actions_type_datetime_range_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
168var file_google_actions_type_datetime_range_proto_goTypes = []interface{}{
169	(*DateTimeRange)(nil),     // 0: google.actions.type.DateTimeRange
170	(*datetime.DateTime)(nil), // 1: google.type.DateTime
171}
172var file_google_actions_type_datetime_range_proto_depIdxs = []int32{
173	1, // 0: google.actions.type.DateTimeRange.start:type_name -> google.type.DateTime
174	1, // 1: google.actions.type.DateTimeRange.end:type_name -> google.type.DateTime
175	2, // [2:2] is the sub-list for method output_type
176	2, // [2:2] is the sub-list for method input_type
177	2, // [2:2] is the sub-list for extension type_name
178	2, // [2:2] is the sub-list for extension extendee
179	0, // [0:2] is the sub-list for field type_name
180}
181
182func init() { file_google_actions_type_datetime_range_proto_init() }
183func file_google_actions_type_datetime_range_proto_init() {
184	if File_google_actions_type_datetime_range_proto != nil {
185		return
186	}
187	if !protoimpl.UnsafeEnabled {
188		file_google_actions_type_datetime_range_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
189			switch v := v.(*DateTimeRange); i {
190			case 0:
191				return &v.state
192			case 1:
193				return &v.sizeCache
194			case 2:
195				return &v.unknownFields
196			default:
197				return nil
198			}
199		}
200	}
201	type x struct{}
202	out := protoimpl.TypeBuilder{
203		File: protoimpl.DescBuilder{
204			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
205			RawDescriptor: file_google_actions_type_datetime_range_proto_rawDesc,
206			NumEnums:      0,
207			NumMessages:   1,
208			NumExtensions: 0,
209			NumServices:   0,
210		},
211		GoTypes:           file_google_actions_type_datetime_range_proto_goTypes,
212		DependencyIndexes: file_google_actions_type_datetime_range_proto_depIdxs,
213		MessageInfos:      file_google_actions_type_datetime_range_proto_msgTypes,
214	}.Build()
215	File_google_actions_type_datetime_range_proto = out.File
216	file_google_actions_type_datetime_range_proto_rawDesc = nil
217	file_google_actions_type_datetime_range_proto_goTypes = nil
218	file_google_actions_type_datetime_range_proto_depIdxs = nil
219}
220