Lines Matching defs:DataType

331 template<class DataType> struct OptionValue;
335 template<class DataType, bool isClass>
338 typedef OptionValue<DataType> WrapperType;
342 const DataType &getValue() const { assert(false && "no default value"); }
348 bool compare(const DataType &/*V*/) const { return false; }
354 template<class DataType>
356 DataType Value;
363 const DataType &getValue() const {
368 void setValue(const DataType &V) { Valid = true; Value = V; }
370 bool compare(const DataType &V) const {
375 const OptionValueCopy<DataType> &VC =
376 static_cast< const OptionValueCopy<DataType>& >(V);
383 template<class DataType>
384 struct OptionValueBase<DataType, false> : OptionValueCopy<DataType> {
385 typedef DataType WrapperType;
389 template<class DataType>
390 struct OptionValue : OptionValueBase<DataType, is_class<DataType>::value> {
393 OptionValue(const DataType& V) {
398 OptionValue<DataType> &operator=(const DT& V) {
448 template<class DataType>
456 ValuesClass(const char *EnumName, DataType Val, const char *Desc,
463 DataType EnumVal = static_cast<DataType>(va_arg(ValueArgs, int));
479 template<class DataType>
480 ValuesClass<DataType> END_WITH_NULL values(const char *Arg, DataType Val,
484 ValuesClass<DataType> Vals(Arg, Val, Desc, ValueArgs);
541 // DataType (via the same AnyOptionValue).
599 template <class DataType>
604 OptionInfo(const char *name, DataType v, const char *helpStr) :
606 OptionValue<DataType> V;
610 typedef DataType parser_data_type;
625 bool parse(Option &O, StringRef ArgName, StringRef Arg, DataType &V) {
647 OptionInfo X(Name, static_cast<DataType>(V), HelpStr);
702 template<class DataType>
705 typedef DataType parser_data_type;
706 typedef OptionValue<DataType> OptVal;
1024 template<class DataType, bool ExternalStorage, bool isClass>
1026 DataType *Location; // Where to store the object...
1027 OptionValue<DataType> Default;
1037 bool setLocation(Option &O, DataType &L) {
1053 DataType &getValue() { check(); return *Location; }
1054 const DataType &getValue() const { check(); return *Location; }
1056 operator DataType() const { return this->getValue(); }
1058 const OptionValue<DataType> &getDefault() const { return Default; }
1065 template<class DataType>
1066 class opt_storage<DataType,false,true> : public DataType {
1068 OptionValue<DataType> Default;
1072 DataType::operator=(V);
1077 DataType &getValue() { return *this; }
1078 const DataType &getValue() const { return *this; }
1080 const OptionValue<DataType> &getDefault() const { return Default; }
1087 template<class DataType>
1088 class opt_storage<DataType, false, false> {
1090 DataType Value;
1091 OptionValue<DataType> Default;
1095 opt_storage() : Value(DataType()) {}
1103 DataType &getValue() { return Value; }
1104 DataType getValue() const { return Value; }
1106 const OptionValue<DataType> &getDefault() const { return Default; }
1108 operator DataType() const { return getValue(); }
1111 DataType operator->() const { return Value; }
1118 template <class DataType, bool ExternalStorage = false,
1119 class ParserClass = parser<DataType> >
1121 public opt_storage<DataType, ExternalStorage,
1122 is_class<DataType>::value> {
1162 void setInitialValue(const DataType &V) { this->setValue(V, true); }
1167 DataType &operator=(const T &Val) {
1252 template<class DataType, class StorageClass>
1279 template<class DataType>
1280 class list_storage<DataType, bool> : public std::vector<DataType> {
1283 void addValue(const T &V) { std::vector<DataType>::push_back(V); }
1290 template <class DataType, class Storage = bool,
1291 class ParserClass = parser<DataType> >
1292 class list : public Option, public list_storage<DataType, Storage> {
1308 list_storage<DataType, Storage>::addValue(Val);
1421 template<class DataType, class StorageClass>
1462 template<class DataType>
1463 class bits_storage<DataType, bool> {
1492 template <class DataType, class Storage = bool,
1493 class ParserClass = parser<DataType> >
1494 class bits : public Option, public bits_storage<DataType, Storage> {