• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdeutils API Reference
  • KDE Home
  • Contact Us
 

kcalc

  • sources
  • kde-4.14
  • kdeutils
  • kcalc
  • knumber
knumber_error.h
Go to the documentation of this file.
1 /*
2 Copyright (C) 2001 - 2013 Evan Teran
3  evan.teran@gmail.com
4 
5 This program is free software: you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation, either version 2 of the License, or
8 (at your option) any later version.
9 
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
14 
15 You should have received a copy of the GNU General Public License
16 along with this program. If not, see <http://www.gnu.org/licenses/>.
17 */
18 
19 #ifndef KNUMBER_ERROR_H_
20 #define KNUMBER_ERROR_H_
21 
22 #include "knumber_base.h"
23 
24 class KNumber;
25 
26 namespace detail {
27 
28 class knumber_error : public knumber_base {
29  friend class ::KNumber;
30  friend class knumber_integer;
31  friend class knumber_fraction;
32  friend class knumber_float;
33 
34 public:
35  enum Error {
36  ERROR_UNDEFINED,
37  ERROR_POS_INFINITY,
38  ERROR_NEG_INFINITY
39  };
40 
41 public:
42  explicit knumber_error(const QString &s);
43  explicit knumber_error(Error e);
44  knumber_error();
45  virtual ~knumber_error();
46 
47 public:
48  virtual QString toString(int precision) const;
49  virtual quint64 toUint64() const;
50  virtual qint64 toInt64() const;
51 
52 public:
53  virtual bool is_integer() const;
54  virtual bool is_zero() const;
55  virtual int sign() const;
56 
57 public:
58  virtual knumber_base *add(knumber_base *rhs);
59  virtual knumber_base *sub(knumber_base *rhs);
60  virtual knumber_base *mul(knumber_base *rhs);
61  virtual knumber_base *div(knumber_base *rhs);
62  virtual knumber_base *mod(knumber_base *rhs);
63 
64 public:
65  virtual knumber_base *bitwise_and(knumber_base *rhs);
66  virtual knumber_base *bitwise_xor(knumber_base *rhs);
67  virtual knumber_base *bitwise_or(knumber_base *rhs);
68  virtual knumber_base *bitwise_shift(knumber_base *rhs);
69 
70 public:
71  virtual knumber_base *pow(knumber_base *rhs);
72  virtual knumber_base *neg();
73  virtual knumber_base *cmp();
74  virtual knumber_base *abs();
75  virtual knumber_base *sqrt();
76  virtual knumber_base *cbrt();
77  virtual knumber_base *factorial();
78  virtual knumber_base *reciprocal();
79  virtual knumber_base *tgamma();
80 
81 public:
82  virtual knumber_base *log2();
83  virtual knumber_base *log10();
84  virtual knumber_base *ln();
85  virtual knumber_base *exp2();
86  virtual knumber_base *exp10();
87  virtual knumber_base *floor();
88  virtual knumber_base *ceil();
89  virtual knumber_base *exp();
90  virtual knumber_base *bin(knumber_base *rhs);
91 
92 public:
93  virtual knumber_base *sin();
94  virtual knumber_base *cos();
95  virtual knumber_base *tan();
96  virtual knumber_base *asin();
97  virtual knumber_base *acos();
98  virtual knumber_base *atan();
99  virtual knumber_base *sinh();
100  virtual knumber_base *cosh();
101  virtual knumber_base *tanh();
102  virtual knumber_base *asinh();
103  virtual knumber_base *acosh();
104  virtual knumber_base *atanh();
105 
106 public:
107  virtual int compare(knumber_base *rhs);
108 
109 private:
110  // conversion constructors
111  explicit knumber_error(const knumber_integer *value);
112  explicit knumber_error(const knumber_fraction *value);
113  explicit knumber_error(const knumber_float *value);
114  explicit knumber_error(const knumber_error *value);
115 
116 public:
117  virtual knumber_base *clone();
118 
119 private:
120  Error error_;
121 };
122 
123 }
124 
125 #endif
detail::knumber_error::knumber_error
knumber_error()
Definition: knumber_error.cpp:50
detail::knumber_error::sqrt
virtual knumber_base * sqrt()
Definition: knumber_error.cpp:347
detail::knumber_error::log10
virtual knumber_base * log10()
Definition: knumber_error.cpp:638
detail::knumber_error::bin
virtual knumber_base * bin(knumber_base *rhs)
Definition: knumber_error.cpp:708
detail::knumber_error::sinh
virtual knumber_base * sinh()
Definition: knumber_error.cpp:453
detail::knumber_error::add
virtual knumber_base * add(knumber_base *rhs)
Definition: knumber_error.cpp:106
detail::knumber_error::exp
virtual knumber_base * exp()
Definition: knumber_error.cpp:686
detail::knumber_error::cbrt
virtual knumber_base * cbrt()
Definition: knumber_error.cpp:365
detail::knumber_error::atanh
virtual knumber_base * atanh()
Definition: knumber_error.cpp:506
detail::knumber_error::sub
virtual knumber_base * sub(knumber_base *rhs)
Definition: knumber_error.cpp:135
detail::knumber_error::ERROR_NEG_INFINITY
Definition: knumber_error.h:38
detail::knumber_error::tan
virtual knumber_base * tan()
Definition: knumber_error.cpp:408
detail::knumber_error::factorial
virtual knumber_base * factorial()
Definition: knumber_error.cpp:373
detail::knumber_error::log2
virtual knumber_base * log2()
Definition: knumber_error.cpp:630
detail::knumber_error::Error
Error
Definition: knumber_error.h:35
detail::knumber_error::mod
virtual knumber_base * mod(knumber_base *rhs)
Definition: knumber_error.cpp:225
detail::knumber_error::tanh
virtual knumber_base * tanh()
Definition: knumber_error.cpp:470
detail::knumber_error::acos
virtual knumber_base * acos()
Definition: knumber_error.cpp:426
detail::knumber_error::div
virtual knumber_base * div(knumber_base *rhs)
Definition: knumber_error.cpp:201
detail::knumber_error::sign
virtual int sign() const
Definition: knumber_error.cpp:605
detail::knumber_error::acosh
virtual knumber_base * acosh()
Definition: knumber_error.cpp:494
detail::knumber_error::bitwise_shift
virtual knumber_base * bitwise_shift(knumber_base *rhs)
Definition: knumber_error.cpp:580
detail::knumber_error::ln
virtual knumber_base * ln()
Definition: knumber_error.cpp:646
detail::knumber_base
Definition: knumber_base.h:38
detail::knumber_fraction
Definition: knumber_fraction.h:28
detail::knumber_error::clone
virtual knumber_base * clone()
Definition: knumber_error.cpp:546
detail::knumber_integer
Definition: knumber_integer.h:28
detail::knumber_error::exp2
virtual knumber_base * exp2()
Definition: knumber_error.cpp:670
detail::knumber_error::asin
virtual knumber_base * asin()
Definition: knumber_error.cpp:417
QString
detail::knumber_error::pow
virtual knumber_base * pow(knumber_base *rhs)
Definition: knumber_error.cpp:249
detail::knumber_error::is_zero
virtual bool is_zero() const
Definition: knumber_error.cpp:597
KNumber
Definition: knumber.h:30
knumber_base.h
detail::knumber_error::atan
virtual knumber_base * atan()
Definition: knumber_error.cpp:435
detail::knumber_error::bitwise_and
virtual knumber_base * bitwise_and(knumber_base *rhs)
Definition: knumber_error.cpp:553
detail::knumber_error::floor
virtual knumber_base * floor()
Definition: knumber_error.cpp:662
detail::knumber_error::tgamma
virtual knumber_base * tgamma()
Definition: knumber_error.cpp:399
detail::knumber_error::ERROR_POS_INFINITY
Definition: knumber_error.h:37
detail::knumber_error::asinh
virtual knumber_base * asinh()
Definition: knumber_error.cpp:486
detail::knumber_error::mul
virtual knumber_base * mul(knumber_base *rhs)
Definition: knumber_error.cpp:164
detail::knumber_error::reciprocal
virtual knumber_base * reciprocal()
Definition: knumber_error.cpp:621
detail::knumber_error::toInt64
virtual qint64 toInt64() const
Definition: knumber_error.cpp:701
detail::knumber_float
Definition: knumber_float.h:28
detail::knumber_error::sin
virtual knumber_base * sin()
Definition: knumber_error.cpp:381
detail::knumber_error::ceil
virtual knumber_base * ceil()
Definition: knumber_error.cpp:654
detail::knumber_error::compare
virtual int compare(knumber_base *rhs)
Definition: knumber_error.cpp:515
detail::knumber_error::~knumber_error
virtual ~knumber_error()
Definition: knumber_error.cpp:57
detail::knumber_error::exp10
virtual knumber_base * exp10()
Definition: knumber_error.cpp:678
detail::knumber_error
Definition: knumber_error.h:28
detail::knumber_error::abs
virtual knumber_base * abs()
Definition: knumber_error.cpp:329
detail::knumber_error::bitwise_or
virtual knumber_base * bitwise_or(knumber_base *rhs)
Definition: knumber_error.cpp:571
detail::knumber_error::ERROR_UNDEFINED
Definition: knumber_error.h:36
detail::knumber_error::is_integer
virtual bool is_integer() const
Definition: knumber_error.cpp:589
detail::knumber_error::cmp
virtual knumber_base * cmp()
Definition: knumber_error.cpp:320
detail::knumber_error::toUint64
virtual quint64 toUint64() const
Definition: knumber_error.cpp:694
detail::knumber_error::toString
virtual QString toString(int precision) const
Definition: knumber_error.cpp:88
detail::knumber_error::neg
virtual knumber_base * neg()
Definition: knumber_error.cpp:300
detail::knumber_error::cos
virtual knumber_base * cos()
Definition: knumber_error.cpp:390
detail::knumber_error::bitwise_xor
virtual knumber_base * bitwise_xor(knumber_base *rhs)
Definition: knumber_error.cpp:562
detail::knumber_error::cosh
virtual knumber_base * cosh()
Definition: knumber_error.cpp:461
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon Jun 22 2020 13:42:28 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

kcalc

Skip menu "kcalc"
  • Main Page
  • Namespace List
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members

kdeutils API Reference

Skip menu "kdeutils API Reference"
  • ark
  • filelight
  • kcalc
  • kcharselect
  • kdf
  • kfloppy
  • kgpg
  • ktimer
  • kwallet
  • sweeper

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal