Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
absl::strings_internal::BigUnsigned< max_words > Class Template Reference

#include <charconv_bigint.h>

Public Member Functions

 BigUnsigned ()
 
constexpr BigUnsigned (uint64_t v)
 
 BigUnsigned (absl::string_view sv)
 
uint32_t GetWord (int index) const
 
void MultiplyBy (uint32_t v)
 
void MultiplyBy (uint64_t v)
 
template<int M>
void MultiplyBy (const BigUnsigned< M > &other)
 
void MultiplyByFiveToTheNth (int n)
 
void MultiplyByTenToTheNth (int n)
 
int ReadFloatMantissa (const ParsedFloat &fp, int significant_digits)
 
void SetToZero ()
 
void ShiftLeft (int count)
 
int size () const
 
std::string ToString () const
 
const uint32_t * words () const
 

Static Public Member Functions

static constexpr int Digits10 ()
 
static BigUnsigned FiveToTheNth (int n)
 

Private Member Functions

void AddWithCarry (int index, uint32_t value)
 
void AddWithCarry (int index, uint64_t value)
 
template<uint32_t divisor>
uint32_t DivMod ()
 
void MultiplyBy (int other_size, const uint32_t *other_words)
 
void MultiplyStep (int original_size, const uint32_t *other_words, int other_size, int step)
 
int ReadDigits (const char *begin, const char *end, int significant_digits)
 

Private Attributes

int size_
 
uint32_t words_ [max_words]
 

Detailed Description

template<int max_words>
class absl::strings_internal::BigUnsigned< max_words >

Definition at line 54 of file charconv_bigint.h.

Constructor & Destructor Documentation

◆ BigUnsigned() [1/3]

template<int max_words>
absl::strings_internal::BigUnsigned< max_words >::BigUnsigned ( )
inline

Definition at line 59 of file charconv_bigint.h.

◆ BigUnsigned() [2/3]

template<int max_words>
constexpr absl::strings_internal::BigUnsigned< max_words >::BigUnsigned ( uint64_t  v)
inlineexplicit

Definition at line 60 of file charconv_bigint.h.

◆ BigUnsigned() [3/3]

template<int max_words>
absl::strings_internal::BigUnsigned< max_words >::BigUnsigned ( absl::string_view  sv)
inlineexplicit

Definition at line 68 of file charconv_bigint.h.

Member Function Documentation

◆ AddWithCarry() [1/2]

template<int max_words>
void absl::strings_internal::BigUnsigned< max_words >::AddWithCarry ( int  index,
uint32_t  value 
)
inlineprivate

Definition at line 277 of file charconv_bigint.h.

◆ AddWithCarry() [2/2]

template<int max_words>
void absl::strings_internal::BigUnsigned< max_words >::AddWithCarry ( int  index,
uint64_t  value 
)
inlineprivate

Definition at line 293 of file charconv_bigint.h.

◆ Digits10()

template<int max_words>
static constexpr int absl::strings_internal::BigUnsigned< max_words >::Digits10 ( )
inlinestatic

Definition at line 93 of file charconv_bigint.h.

◆ DivMod()

template<int max_words>
template<uint32_t divisor>
uint32_t absl::strings_internal::BigUnsigned< max_words >::DivMod ( )
inlineprivate

Definition at line 320 of file charconv_bigint.h.

◆ FiveToTheNth()

template<int max_words>
BigUnsigned< max_words > absl::strings_internal::BigUnsigned< max_words >::FiveToTheNth ( int  n)
static

Definition at line 287 of file charconv_bigint.cc.

◆ GetWord()

template<int max_words>
uint32_t absl::strings_internal::BigUnsigned< max_words >::GetWord ( int  index) const
inline

Definition at line 203 of file charconv_bigint.h.

◆ MultiplyBy() [1/4]

template<int max_words>
void absl::strings_internal::BigUnsigned< max_words >::MultiplyBy ( uint32_t  v)
inline

Definition at line 127 of file charconv_bigint.h.

◆ MultiplyBy() [2/4]

template<int max_words>
void absl::strings_internal::BigUnsigned< max_words >::MultiplyBy ( uint64_t  v)
inline

Definition at line 149 of file charconv_bigint.h.

◆ MultiplyBy() [3/4]

template<int max_words>
template<int M>
void absl::strings_internal::BigUnsigned< max_words >::MultiplyBy ( const BigUnsigned< M > &  other)
inline

Definition at line 192 of file charconv_bigint.h.

◆ MultiplyBy() [4/4]

template<int max_words>
void absl::strings_internal::BigUnsigned< max_words >::MultiplyBy ( int  other_size,
const uint32_t *  other_words 
)
inlineprivate

Definition at line 267 of file charconv_bigint.h.

◆ MultiplyByFiveToTheNth()

template<int max_words>
void absl::strings_internal::BigUnsigned< max_words >::MultiplyByFiveToTheNth ( int  n)
inline

Definition at line 161 of file charconv_bigint.h.

◆ MultiplyByTenToTheNth()

template<int max_words>
void absl::strings_internal::BigUnsigned< max_words >::MultiplyByTenToTheNth ( int  n)
inline

Definition at line 172 of file charconv_bigint.h.

◆ MultiplyStep()

template<int max_words>
void absl::strings_internal::BigUnsigned< max_words >::MultiplyStep ( int  original_size,
const uint32_t *  other_words,
int  other_size,
int  step 
)
private

Definition at line 315 of file charconv_bigint.cc.

◆ ReadDigits()

template<int max_words>
int absl::strings_internal::BigUnsigned< max_words >::ReadDigits ( const char *  begin,
const char *  end,
int  significant_digits 
)
private

Definition at line 192 of file charconv_bigint.cc.

◆ ReadFloatMantissa()

template<int max_words>
int absl::strings_internal::BigUnsigned< max_words >::ReadFloatMantissa ( const ParsedFloat fp,
int  significant_digits 
)

Definition at line 170 of file charconv_bigint.cc.

◆ SetToZero()

template<int max_words>
void absl::strings_internal::BigUnsigned< max_words >::SetToZero ( )
inline

Definition at line 196 of file charconv_bigint.h.

◆ ShiftLeft()

template<int max_words>
void absl::strings_internal::BigUnsigned< max_words >::ShiftLeft ( int  count)
inline

Definition at line 99 of file charconv_bigint.h.

◆ size()

template<int max_words>
int absl::strings_internal::BigUnsigned< max_words >::size ( ) const
inline

Definition at line 214 of file charconv_bigint.h.

◆ ToString()

template<int max_words>
std::string absl::strings_internal::BigUnsigned< max_words >::ToString ( ) const

Definition at line 338 of file charconv_bigint.cc.

◆ words()

template<int max_words>
const uint32_t* absl::strings_internal::BigUnsigned< max_words >::words ( ) const
inline

Definition at line 215 of file charconv_bigint.h.

Member Data Documentation

◆ size_

template<int max_words>
int absl::strings_internal::BigUnsigned< max_words >::size_
private

Definition at line 342 of file charconv_bigint.h.

◆ words_

template<int max_words>
uint32_t absl::strings_internal::BigUnsigned< max_words >::words_[max_words]
private

Definition at line 343 of file charconv_bigint.h.


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


abseil_cpp
Author(s):
autogenerated on Mon Feb 28 2022 21:31:23