00001 /*---------------------------------------------------------------------\ 00002 | | 00003 | __ __ ____ _____ ____ | 00004 | \ \ / /_ _/ ___|_ _|___ \ | 00005 | \ V / _` \___ \ | | __) | | 00006 | | | (_| |___) || | / __/ | 00007 | |_|\__,_|____/ |_| |_____| | 00008 | | 00009 | core system | 00010 | (C) SuSE GmbH | 00011 \----------------------------------------------------------------------/ 00012 00013 File: YCPVoid.h 00014 00015 Author: Mathias Kettner <kettner@suse.de> 00016 Maintainer: Thomas Roelz <tom@suse.de> 00017 00018 /-*/ 00019 // -*- c++ -*- 00020 00021 #ifndef YCPVoid_h 00022 #define YCPVoid_h 00023 00024 00025 #include "YCPValue.h" 00026 00034 class YCPVoidRep : public YCPValueRep 00035 { 00036 protected: 00037 friend class YCPVoid; 00038 00042 YCPVoidRep(); 00043 00044 public: 00049 string toString() const; 00050 00054 std::ostream & toStream (std::ostream & str) const; 00055 std::ostream & toXml (std::ostream & str, int indent ) const; 00056 00060 YCPValueType valuetype() const; 00061 00066 YCPOrder compare(const YCPVoid &v) const; 00067 }; 00068 00075 class YCPVoid : public YCPValue 00076 { 00077 DEF_COMMON(Void, Value); 00078 00079 static YCPVoid* nil; 00080 public: 00081 YCPVoid(); 00082 YCPVoid(bytecodeistream & str); 00083 }; 00084 #endif // YCPVoid_h