Guest User

Untitled

a guest
Dec 17th, 2018
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.37 KB | None | 0 0
  1. // C++ Builtins
  2.  
  3. #include <iostream>
  4. #include <string>
  5.  
  6. using namespace std;
  7.  
  8.  
  9. // Nothing Class
  10. class Nothing {
  11.  
  12. };
  13.  
  14. // Base Class
  15. class Base {
  16. public:
  17. string val;
  18. Nothing PRINT(void) {
  19. cout << val << endl;
  20. }
  21. };
  22.  
  23. const string True = "true";
  24. const string False = "false";
  25.  
  26. // Bool Class
  27. class Bool: public Base {
  28. public:
  29. Bool(string x) {
  30. val = x;
  31. }
  32.  
  33. Bool And(Bool x) {
  34. if (val == False || x.val == False) {
  35. return Bool(False);
  36. }
  37. return Bool(False);
  38. }
  39.  
  40. Bool Or(Bool x) {
  41. if (val == True || x.val == True) {
  42. return Bool(True);
  43. }
  44. return Bool(False);
  45. }
  46. };
  47.  
  48. // String Class
  49. class String: public Base {
  50. public:
  51. String(string x) {
  52. val = x;
  53. }
  54. String PLUS(String str) {
  55. return String(val + str.val);
  56. }
  57.  
  58. Bool EQ(String str) {
  59. if (val == str.val) {
  60. return Bool(True);
  61. } else {
  62. return Bool(False);
  63. }
  64. }
  65. };
  66.  
  67. // Int Class
  68. class Int: public Base {
  69. public:
  70. int valInt;
  71. Int(int x) {
  72. val = to_string(x);
  73. valInt = x;
  74. }
  75.  
  76. Int PLUS(Int num) {
  77. return Int(valInt + num.valInt);
  78. }
  79.  
  80. Int MINUS(Int num) {
  81. return Int(valInt - num.valInt);
  82. }
  83.  
  84. Int TIMES(Int num) {
  85. return Int(valInt * num.valInt);
  86. }
  87.  
  88. Bool GT(Int num) {
  89. if (valInt < num.valInt) {
  90. return Bool(False);
  91. } else {
  92. return Bool(True);
  93. }
  94. }
  95.  
  96. Bool EQ(Int num) {
  97. if (valInt == num.valInt) {
  98. return Bool(True);
  99. }
  100. return Bool(False);
  101. }
  102.  
  103. String Stringify() {
  104. return String(val);
  105. }
  106. };
Add Comment
Please, Sign In to add comment