comparison interps/rail/src/NilVar.h @ 996:859f9b4339e6

<Gregor> tar xf egobot.tar.xz
author HackBot
date Sun, 09 Dec 2012 19:30:08 +0000
parents
children
comparison
equal deleted inserted replaced
995:6883f5911eb7 996:859f9b4339e6
1 // NilVar.h
2
3 #ifndef NIL_VAR_H_RAIL_1
4 #define NIL_VAR_H_RAIL_1
5
6 #include "Var.h"
7
8 class NilVar : public Var
9 {
10 public:
11 NilVar() {}
12 virtual ~NilVar() {}
13
14 virtual StringVar * getString(void)
15 {
16 return NULL;
17 }
18
19 virtual ListVar * getList(void)
20 {
21 return NULL;
22 }
23
24 virtual NilVar * getNil(void)
25 {
26 return this;
27 }
28
29 virtual Closure * getClosure(void)
30 {
31 return NULL;
32 }
33
34 virtual std::string toString(void) const
35 {
36 return "<NIL>";
37 }
38 private:
39 NilVar(NilVar const &) {}
40 NilVar & operator=(NilVar const &) { return *this; }
41 };
42
43 #endif