webkit  2cdf99a9e3038c7e01b3c37e8ad903ecbe5eecf1
https://github.com/WebKit/webkit
Instance Methods | Properties | List of all members
GPBDuration Class Reference

#import <Duration.pbobjc.h>

Inheritance diagram for GPBDuration:
GPBMessage NSObject

Instance Methods

(instancetype) - initWithTimeIntervalSince1970:
 
- Instance Methods inherited from GPBMessage
(instancetype) - initWithData:error:
 
(instancetype) - initWithData:extensionRegistry:error:
 
(instancetype) - initWithCodedInputStream:extensionRegistry:error:
 
(void- writeToCodedOutputStream:
 Writes out the message to the given output stream. More...
 
(void- writeToOutputStream:
 Writes out the message to the given output stream. More...
 
(void- writeDelimitedToCodedOutputStream:
 
(void- writeDelimitedToOutputStream:
 
(nullable NSData *) - data
 
(NSData *) - delimitedData
 
(size_t- serializedSize
 
(GPBDescriptor *) - descriptor
 Return the descriptor for the message. More...
 
(BOOL- hasExtension:
 Test to see if the given extension is set on the message. More...
 
(nullable id- getExtension:
 
(void- setExtension:value:
 
(void- addExtension:value:
 
(void- setExtension:index:value:
 
(void- clearExtension:
 Clears the given extension for this message. More...
 
(void- clear
 Resets all of the fields of this message to their default values. More...
 
(void- mergeFromData:extensionRegistry:
 
(void- mergeFrom:
 

Properties

int64_t seconds
 
int32_t nanos
 
NSTimeInterval timeIntervalSince1970
 
- Properties inherited from GPBMessage
GPBUnknownFieldSetunknownFields
 
BOOL initialized
 Are all required fields set in the message and all embedded messages. More...
 

Additional Inherited Members

- Class Methods inherited from GPBMessage
(instancetype) + message
 Returns an autoreleased instance. More...
 
(instancetype) + parseFromData:error:
 
(instancetype) + parseFromData:extensionRegistry:error:
 
(instancetype) + parseFromCodedInputStream:extensionRegistry:error:
 
(instancetype) + parseDelimitedFromCodedInputStream:extensionRegistry:error:
 
(GPBDescriptor *) + descriptor
 Return the descriptor for the message class. More...
 

Detailed Description

A Duration represents a signed, fixed-length span of time represented as a count of seconds and fractions of seconds at nanosecond resolution. It is independent of any calendar and concepts like "day" or "month". It is related to Timestamp in that the difference between two Timestamp values is a Duration and it can be added or subtracted from a Timestamp. Range is approximately +-10,000 years.

Example 1: Compute Duration from two Timestamps in pseudo code.

Timestamp start = ...;
Timestamp end = ...;
Duration duration = ...;

duration.seconds = end.seconds - start.seconds;
duration.nanos = end.nanos - start.nanos;

if (duration.seconds < 0 && duration.nanos > 0) {
  duration.seconds += 1;
  duration.nanos -= 1000000000;
} else if (durations.seconds > 0 && duration.nanos < 0) {
  duration.seconds -= 1;
  duration.nanos += 1000000000;
}

Example 2: Compute Timestamp from Timestamp + Duration in pseudo code.

Timestamp start = ...;
Duration duration = ...;
Timestamp end = ...;

end.seconds = start.seconds + duration.seconds;
end.nanos = start.nanos + duration.nanos;

if (end.nanos < 0) {
  end.seconds -= 1;
  end.nanos += 1000000000;
} else if (end.nanos >= 1000000000) {
  end.seconds += 1;
  end.nanos -= 1000000000;
}  

Method Documentation

◆ initWithTimeIntervalSince1970:()

- (instancetype) initWithTimeIntervalSince1970: (NSTimeInterval timeIntervalSince1970

Provided by category GPBDuration(GBPWellKnownTypes).

Property Documentation

◆ nanos

- (int32_t) nanos
readwritenonatomicassign

Signed fractions of a second at nanosecond resolution of the span of time. Durations less than one second are represented with a 0 seconds field and a positive or negative nanos field. For durations of one second or more, a non-zero value for the nanos field must be of the same sign as the seconds field. Must be from -999,999,999 to +999,999,999 inclusive.

◆ seconds

- (int64_t) seconds
readwritenonatomicassign

Signed seconds of the span of time. Must be from -315,576,000,000 to +315,576,000,000 inclusive.

◆ timeIntervalSince1970

- (NSTimeInterval) timeIntervalSince1970
readwritenonatomicassign

Provided by category GPBDuration(GBPWellKnownTypes).


The documentation for this class was generated from the following file: