--- /dev/null
+#include "OptionalType.h"\r
+\r
+namespace Databoard {\r
+ namespace Type {\r
+\r
+ OptionalType::OptionalType()\r
+ {\r
+ componentType = NULL;\r
+ }\r
+\r
+ OptionalType::OptionalType(DataType* componentType)\r
+ {\r
+ this->componentType = componentType;\r
+ }\r
+\r
+ OptionalType::~OptionalType()\r
+ {\r
+ if(componentType != NULL)\r
+ {\r
+ delete componentType;\r
+ }\r
+ }\r
+\r
+ DataType* OptionalType::getComponentType()\r
+ {\r
+ return componentType;\r
+ }\r
+\r
+ void OptionalType::setComponentType(DataType* componentType)\r
+ {\r
+ this->componentType = componentType;\r
+ }\r
+\r
+ std::string OptionalType::writeOut(int /*indent*/)\r
+ {\r
+ std::string s;\r
+\r
+ s.append("Optional");\r
+\r
+ s += "(";\r
+\r
+ if(componentType != NULL)\r
+ {\r
+ s += componentType->writeOut();\r
+ }\r
+\r
+ s += ")";\r
+\r
+ return s;\r
+ }\r
+ }\r
+}\r