Namespaces

Records

Functions

  • lib::statusor::StatusOr<std::string> ReadTextFile (const Path & file_path)
  • lib::statusor::StatusOr<std::string> ReadNonEmptyTextFile (const Path & file_path)
  • lib::statusor::StatusOr<std::string> ReadHexFile (const Path & file_path)
  • std::string ReadHexFileOrDefault (const Path & file_path, const std::string & default_string)
  • std::string ReadHexFileOrDefault (const std::string & file_path, const std::string & default_string)

    DEPRECATED: TODO(https://fxbug.dev/278930401): Remove once not used in Fuchsia

  • template <typename U, class... Args>
    NotNullUniquePtr<U> MakeNotNullUniquePtr (Args &&... args)
  • CalendarDate DayIndexToCalendarDate (uint32_t day_index)

    Converts the given day_index to a CalendarDate, necessarily on or

    after January 1, 1970.

  • uint32_t DayIndexToWeekIndex (uint32_t day_index)

    Given a day_index returns the index of the Cobalt week epoch

    containing that date.

  • uint32_t DayIndexToHourIdNoDst (uint32_t day_index)

    Given a day index, returns the hour identifier for the start of that day, assuming that DST is

    not in force.

  • uint32_t HourIdToDayIndex (uint32_t hour_id)

    Given an hour identifier, returns the index of the Cobalt day containing that hour.

  • uint32_t CalendarDateToWeekIndex (const CalendarDate & calendar_date)

    Given a CalendarDate returns the index of the Cobalt week epoch

    containing that date. If the fields of calendar_date do not make sense as a

    real day of the calendar (for example if month=13) then the result is

    undefined. If the specified date is prior to January 1, 1970 then the result

    is undefined.

  • template <typename T, class... Args>
    NotNullUniquePtr<T> MakeNotNullUniquePtr (Args &&... args)

    MakeNotNullUniquePtr is equivalent to std::make_unique, and constructs a NotNullUniquePtr that

    is guaranteed to not be null.

    Defined at line 89 of file ../../third_party/cobalt/src/lib/util/not_null.h

  • template <typename T>
    lib::statusor::StatusOr<NotNullSharedPtr<T>> MaybeWrapNotNullSharedPtr (std::shared_ptr<T> && other)

    Defined at line 252 of file ../../third_party/cobalt/src/lib/util/not_null.h

  • template <typename U, typename V, class... Args>
    NotNullUniquePtr<V> WrapNotNullUniquePtrOrDefault (std::unique_ptr<V> && other, Args &&... args)
  • template <typename U>
    NotNullUniquePtr<U> TESTONLY_TakeRawPointer (U * other)
  • template <typename U>
    lib::statusor::StatusOr<NotNullUniquePtr<U>> WrapNotNullUniquePtr (std::unique_ptr<U> && other)
  • lib::statusor::StatusOr<ParsedKeyset> ParsePublicKeys (std::string_view pb_bytes, system_data::Environment env)

    Parses a serialized CobaltPublicKeys proto for the specified target environment

    (PROD or DEVEL), validates the keyset bytes, key indices, and expiration timestamps,

    and returns initialized Tink hybrid EncryptedMessageMakers for the Shuffler and Analyzer.

    Returns INVALID_ARGUMENT if the outer CobaltPublicKeys proto or its metadata fields are

    invalid, or FAILED_PRECONDITION if a public_tink_keyset is empty or rejected by Tink.

  • lib::statusor::StatusOr<uint32_t> TimePointToHourId (std::chrono::system_clock::time_point time_point, const util::CivilTimeConverterInterface & civil_time_converter, const MetricDefinition & metric)

    Returns the hour ID for a time point, with respect to the time zone specified by `metric`'s time

    zone policy. Prefer `TimeInfo::FromTimePoint()` when both the day index and hour ID are needed.

  • lib::statusor::StatusOr<uint32_t> TimePointToDayIndex (std::chrono::system_clock::time_point time_point, const util::CivilTimeConverterInterface & civil_time_converter, const MetricDefinition & metric)

    Returns the day index for a time point, with respect to the time zone specified by `metric`'s

    time zone policy. Prefer `TimeInfo::FromTimePoint()` when both the day index and hour ID are

    needed.

  • uint32_t TimePointToHourIdUtc (std::chrono::system_clock::time_point time_point)

    Returns the hour id for a time point, with respect to UTC. Prefer

    `TimeInfo::FromTimePointUtc()` when both the day index and hour ID are needed.

  • uint32_t TimePointToDayIndexUtc (std::chrono::system_clock::time_point time_point)

    Returns the day index for a time point, with respect to UTC. Prefer

    `TimeInfo::FromTimePointUtc()` when both the day index and hour ID are needed.

  • uint32_t TimeToHourId (time_t time, MetricDefinition::TimeZonePolicy time_zone)

    DEPRECATED: to be replaced by `TimePointToHourId`.

    Returns the hour identifier. The hour identifier is calculated as follows:

    (TimeToDayIndex(time, time_zone) * 48) + (tm_hour * 2) + (tm_dst ? 0 : 1)

    See: https://fuchsia.googlesource.com/cobalt/+/master/docs/hour_id.md

  • uint32_t TimeToDayIndex (time_t time, MetricDefinition::TimeZonePolicy time_zone)

    DEPRECATED: to be replaced by `TimePointToDayIndex`.

    Returns the day index corresponding to |time| in the given |time_zone|

    or UINT32_MAX if |time_zone| is not valid. |time| must be a Unix timestamp,

    that is a number of Unix seconds since the Unix epoch.

  • time_t MidnightUtcFromDayIndex (uint32_t day_index)

    Returns the Unix time for midnight of the day with the given |day_index|

    in UTC.

  • uint32_t CalendarDateToDayIndex (const CalendarDate & calendar_date)

    Converts the given CalendarDate to a Cobalt Day Index. If the fields of

    calendar_date do not make sense as a real day of the calendar

    (for example if month=13) then the result is undefined. If the

    specified date is prior to January 1, 1970 or not before the year 10,000

    then the result is undefined.

  • CalendarDate WeekIndexToCalendarDate (uint32_t week_index)

    Given the index of a Cobalt week epoch returns the CalendarDate for the first

    day of that week epoch. In all cases except week_index=0 the

    returned date will be a Sunday. If week_index=0 the returned date will

    be day zero: Thu 1970-1-1.

  • uint32_t DayIndexToMonthIndex (uint32_t day_index)

    Given a day_index returns the index of the Cobalt month epoch

    containing that date.

  • uint32_t CalendarDateToMonthIndex (const CalendarDate & calendar_date)

    Given a CalendarDate returns the index of the Cobalt month epoch

    containing that date. If the fields of

    calendar_date do not make sense as a real day of the calendar (for example if

    month=13) then the result is undefined. If the specified date is prior to

    January 1, 1970 then the result is undefined.

  • CalendarDate MonthIndexToCalendarDate (uint32_t month_index)

    Given the index of a Cobalt month epoch returns the CalendarDate for the

    first day of that month epoch.

  • int64_t ToUnixSeconds (std::chrono::system_clock::time_point t)

    Returns the the given time as a number of seconds since the Unix epoch.

  • int64_t DayIndexToUnixSeconds (uint32_t day_index)
  • int64_t HourIdToUnixSeconds (uint32_t hour_id)
  • std::chrono::system_clock::time_point FromUnixSeconds (int64_t seconds)

    Returns the given number of seconds since the Unix epoch as a time_point.

  • template <typename U>
    lib::statusor::StatusOr<NotNullSharedPtr<U>> MaybeWrapNotNullSharedPtr (std::shared_ptr<U> && other)
  • template <typename T, typename U, class... Args>
    NotNullUniquePtr<U> WrapNotNullUniquePtrOrDefault (std::unique_ptr<U> && other, Args &&... args)

    WrapNotNullUniquePtrOrDefault allows converting std::unique_ptr into a NotNullUniquePtr. It

    does this by taking arguments for a fallback constructor after the std::unique_ptr argument. If

    the provided std::unique_ptr happens to be null, the fallback constructor will be used. This

    way the pointer is guaranteed never to be null.

    Defined at line 98 of file ../../third_party/cobalt/src/lib/util/not_null.h

  • template <typename T>
    NotNullUniquePtr<T> TESTONLY_TakeRawPointer (T * other)

    TESTONLY_TakeRawPointer takes a (possible null) pointer to an object of type T. If the pointer

    is non-null, it will return a NotNullUniquePtr

    <T

    > that takes ownership of the provided pointer.

    Otherwise it will CHECK-fail.

    Defined at line 110 of file ../../third_party/cobalt/src/lib/util/not_null.h

  • template <typename T>
    lib::statusor::StatusOr<NotNullUniquePtr<T>> WrapNotNullUniquePtr (std::unique_ptr<T> && other)

    WrapNotNullUniquePtr takes a (possible null) pointer to an object of type T. If the pointer is

    non-null, it will return a NotNullUniquePtr

    <T

    > that takes ownership of the provided pointer.

    Otherwise it will return a non-OK status.

    Defined at line 119 of file ../../third_party/cobalt/src/lib/util/not_null.h

  • std::ostream & operator<< (std::ostream & o, const TimeInfo & a)

    Stream operator useful for logging TimeInfo objects.

  • std::ostream & operator<< (std::ostream & os, const NamedType<T, Tag> & other)

    Defined at line 83 of file ../../third_party/cobalt/src/lib/util/named_type.h