libqalculate-3.20.0
Public Member Functions | Public Attributes | List of all members
PrintOptions Struct Reference

Options for formatting and display of mathematical structures/results. More...

#include <includes.h>

Public Member Functions

const std::string & comma () const
 Returns the comma sign used (default sign or comma_sign)
 
const std::string & decimalpoint () const
 Returns the decimal sign used (default sign or decimalpoint_sign)
 

Public Attributes

int min_exp
 
int base
 Number base for displaying numbers. Default: 10.
 
BaseDisplay base_display
 How prefixes for numbers in non-decimal bases will be displayed. Default: BASE_DISPLAY_NONE.
 
bool lower_case_numbers
 Use lower case for non-numeric characters for bases > 10. Default: false.
 
bool lower_case_e
 Use lower case e for base-10 exponent (ex. 1.2e8 instead of 1.2E8). Default: false.
 
NumberFractionFormat number_fraction_format
 If rational numbers will be displayed with decimals, as a fraction, or something in between. Default: FRACTION_DECIMAL.
 
bool indicate_infinite_series
 Show that the digit series of a number continues forever with three dots, instead of rounding (ex. 2/3 displays as 0.666666... instead of 0.666667). Default: false.
 
bool show_ending_zeroes
 Show ending zeroes for approximate numbers to indicate precision (ex.1.2300000 instead of 1.23) . Default: false.
 
bool abbreviate_names
 Prefer abbreviated names of variables, units, functions etc. Default: true.
 
bool use_reference_names
 Prefer reference names of variables, units, functions etc. Default: false.
 
bool place_units_separately
 Isolate units at the end of the displayed expression (ex. x/y m/s instead of (x m)/(y s)). Default: true.
 
bool use_unit_prefixes
 Use prefixes for units when appropriate. Default: true.
 
bool use_prefixes_for_all_units
 Use prefixes for currencies if unit prefixes are om. Default: false.
 
bool use_prefixes_for_currencies
 Use all decimal SI prefixes. If false, prefixes which is not a multiple of thousand (centi, deci, deka, hekto) will not be used automatically. Default: false.
 
bool use_all_prefixes
 Use prefixes for all units (even imperial and similar ones). Default: false.
 
bool use_denominator_prefix
 If set to true, prefixes will be split between numerator and denominator in a unit expression (millimeter per kilogram instead of micrometer per gram). Default: true.
 
bool negative_exponents
 If true, negative exponents will be used instead of division (ex. 5/x^2 becomes 5*x^-2). Default: false.
 
bool short_multiplication
 Avoid using multiplication sign, when appropriate. Default: true.
 
bool limit_implicit_multiplication
 Use a format compatible with ParseOptions::limit_implicit_multiplication. Default: false.
 
bool allow_non_usable
 If it is not necessary that the displayed expression can be parsed correctly. Default: false.
 
bool use_unicode_signs
 If unicode signs can be displayed. Default: false.
 
MultiplicationSign multiplication_sign
 Sign used for display of multiplication. Default: MULTIPLICATION_SIGN_DOT.
 
DivisionSign division_sign
 Sign used for display of division. Default: DIVISION_SIGN_DIVISION_SLASH.
 
bool spacious
 If space will be used to make the output look nicer. Default: true.
 
bool excessive_parenthesis
 Use parentheses even when not necessary. Default: false.
 
bool halfexp_to_sqrt
 Transform raised to 1/2 to square root and raised to 1/3 to cbrt function. Default: true.
 
int min_decimals
 Minimum number of decimals to display for numbers. Default: 0.
 
int max_decimals
 Maximum number of decimals to display for numbers. A negative value disables the limit. Default: -1.
 
bool use_min_decimals
 Enable use of min_decimals. False is equivalent to a min_decimals value of zero. Default: true.
 
bool use_max_decimals
 Enable use of max_decimals. False is equivalent to a negative max_decimals value. Default: true.
 
bool round_halfway_to_even
 If true round halfway numbers to nearest even number, otherwise round upwards. Default: false.
 
bool improve_division_multipliers
 Multiply numerator and denominator to get integers (ex. (6x+y)/2z instead of (3x+0.5y)/z). Default: true.
 
Prefixprefix
 Force use of a specific prefix for units if not NULL. Default: NULL.
 
bool * is_approximate
 If not NULL will be set to true if the output is approximate. Default: NULL.
 
SortOptions sort_options
 Options for the order of values in the displayed expression. Default: default_sort_options.
 
std::string comma_sign
 Comma sign or empty string to use default comma sign. Default: empty string.
 
std::string decimalpoint_sign
 Decimal sign or empty string to use default decimal sign. Default: empty string.
 
bool(* can_display_unicode_string_function )(const char *, void *)
 Function that returns true if a text string with unicode signs can be properly displayed. Default: NULL.
 
void * can_display_unicode_string_arg
 Argument passed to can_display_unicode_string_function. Default: NULL.
 
bool hide_underscore_spaces
 Replace underscores in names with spaces, unless name has suffix. Default: false.
 
bool preserve_format
 Preserves the format of the structure (no sorting, no changed prefixes, no improved division multipliers, etc.). Default: false.
 
bool allow_factorization
 Allows factorization to occur in the output (should be set to true if the structure has been factorized). Default: false.
 
bool spell_out_logical_operators
 If logical operators will be spelled as AND and OR instead of && and ||. Default: false.
 
bool restrict_to_parent_precision
 Displays children of the structure with no higher precision than the parent. Default: true.
 
bool restrict_fraction_length
 Restrict the length of numerators and demonitor as integers in decimal mode for fractional display of numbers. Default: false.
 
bool exp_to_root
 Transform exponentiation positive base and unit fraction exponent (if denominator < 10) to root function. Default: false.
 
bool preserve_precision
 Use the internal precision of each number instead of global precision. Default: false.
 
IntervalDisplay interval_display
 How number intervals will be displayed. Default: INTERVAL_DISPLAY_INTERVAL.
 
DigitGrouping digit_grouping
 Digit grouping separator. Default: DIGIT_GROUPING_NONE.
 
DateTimeFormat date_time_format
 Format for time and date. Default: DATE_TIME_FORMAT_ISO.
 
TimeZone time_zone
 Time zone for time and date. Default: TIME_ZONE_LOCAL.
 
int custom_time_zone
 Offset in minute for custom time zone. Default: 0.
 
bool twos_complement
 Negative binary numbers uses two's complement representation. All binary numbers starting with 1 are negative. Default: true.
 
bool hexadecimal_twos_complement
 Negative hexadecimal numbers uses two's complement representation. All hexadecimal numbers starting with 8 or higher are negative. Default: false.
 
unsigned int binary_bits
 Number of bits used for binary numbers. Set to 0 for automatic. Default: 0.
 

Detailed Description

Options for formatting and display of mathematical structures/results.


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