úÎO£K‹<      !"#$%&'()*+,-./0123456789:; Soostone IncBSD3libs@soostone.com experimentalNone +=HKM$<A type wrapper to make it easier to handle the pipeline of transformations that happen after we have split the number at the decimal place.SThe main data structure with all the necessary information for formatting numbers.¸Units of measure to use in formatting the number. This is useful for things like percentages where you would use (units of 0.01) or financial statements (units of 1000 for example).GA prefix to add to the number, commonly used for currency designation./A suffix for the number. Percent, for example.:The character to use as thousands separator if applicable.+Character to use for the decimal separator.The formatting styleAmount of precision to display Styles for negative numbers 3Different styles for representing negative numbers. #Shows negative numbers as (123.000) "Shows negative numbers as -123.000 =Data structure for different methods of specifying precision.KSpecifies precision with a fixed number of digits after the decimal place.;Specifies precision as a fixed number of significant digits@Data structure describing available styles of number formatting.ˆLike SIStyle but only applies the SI prefix if the number to be formatted falls within the range [a,b] given by the SmartSI arguments.–Adds the symbol for the closest smaller SI prefix as the suffix to the formatted number. This suffix appears before any other suffix you designate.ÔThe aruments a and b define bounds. If the absolute value of the number is in the interval [10 ^ a, 10 ^ b], then it uses the Fixed style. If the number is outside this interval, then use the Exponent style.%Format with standard decimal notationFormat with scientific notation(A reasonable default value for NumStyle.=iTake the raw output from the double-precision conversion functions and split into individual components.]We need to split on dot because that's what double-conversion uses as the decimal separator.'Int format with no thousands separator. 1Int format with comma as the thousands separator.!0Common format for percentages. Example: 75.000%"DCommon format for generic numeric quantities of the form 123,456.99.#?Common format for US dollar quantities of the form $123,456.99.$_Convenience wrapper for percentages that lets you easily control the number of decimal places.%ÿ<Primary function for formatting integrals. This was originally created to avoid depending on the double-conversion package which uses a C library and is therefore less portable. We're keeping this as a separate function because it should have the potential to be more efficient than the floating point version.&7Primary function for formatting floating point numbers.'ÿ9Generic floating point formatting function that allows you to specify your own underlying functions for formatting exponential and fixed formats. This can allow you to use more efficient versions if available. We also use it the test suite to check behavior against the old double-conversion implementation.>XA "pre-format" function that intelligently chooses between fixed and exponential format?XA "pre-format" function that intelligently chooses between fixed and exponential format@`An integral show function without the Show constraint. It works for bases in the range [0,36].<<A BC= !"#$%DE&'Exponential formatterFixed formatterFormat specificationThe number to formatFGH>Lower bound exponentUpper bound exponent Function to call if within range Function to call if out of range?Lower bound exponentUpper bound exponent Function to call if within range Function to call if out of rangeIJKLM@The baseThe number to convert to stringNO(  !"#$%&'(&%$    !"#')<A   BC= !"#$%DE&'FGH>?IJKLM@NO Soostone IncBSD3libs@soostone.com experimentalNone =K(?Provides a uniform interface for formatting all kinds of types.)3A format settings type specific to the object type.*&Render into text using format settings+TheFormat = (),TheFormat = ()-TheFormat = String.TheFormat = String/TheFormat = NumFormat0TheFormat = NumFormat1TheFormat = NumFormat2TheFormat = NumFormat3TheFormat = NumFormat4TheFormat = NumFormat5TheFormat = NumFormat6TheFormat = NumFormat7TheFormat = NumFormat8TheFormat = NumFormat9TheFormat = NumFormat:TheFormat = NumFormat;TheFormat = NumFormat()*+,-./0123456789:;+  !"#$%&'()*()*;:9876543210/.-,+()*+,-./0123456789:;P      !"#$%&'()*+,-./0123456789:;<=>?@AB>CDEFGHIJKLMNOPQformattable-0.1.1Formattable.NumFormat Formattable NumFormat_nfUnits _nfPrefix _nfSuffix _nfThouSep _nfDecSep_nfStyle_nfPrec _nfNegStyle NegativeStyle NegParens NegMinusSign PrecisionTypeDecimalsSigFigsNumStyleSmartSISIStyle SmartExponentFixedExponent autoStylenfUnitsnfPrefixnfSuffix nfThouSepnfDecSepnfStylenfPrec nfNegStyle rawIntFmtintFmt percentFmtnumFmtusdFmt formatPctformatIntegral formatNumformatNumGenericFormat TheFormat runFormat $fFormatBool $fFormatText$fFormatUTCTime $fFormatDay $fFormatFloat$fFormatDouble$fFormatWord64$fFormatWord32$fFormatWord16 $fFormatWord8 $fFormatWord $fFormatInt64 $fFormatInt32 $fFormatInt16 $fFormatInt8 $fFormatInt$fFormatIntegerRawNummkRawNumsmartStyleIntegral smartStyleshowIntegralBaseLenslensfixedIntexponentialInt stripZerossiPrefixIntegralsiPrefixlimitPrecision whenNegativeaddSign addThousands addDecimal integralDigit$fDefaultNumFormat