ROOT logo
// @(#)root/reflex:$Id: TypedefBuilder.cxx 22729 2008-03-19 10:20:10Z pcanal $
// Author: Stefan Roiser 2004

// Copyright CERN, CH-1211 Geneva 23, 2004-2006, All rights reserved.
//
// Permission to use, copy, modify, and distribute this software for any
// purpose is hereby granted without fee, provided that this copyright and
// permissions notice appear in all copies and derivatives.
//
// This software is provided "as is" without express or implied warranty.

#ifndef REFLEX_BUILD
#define REFLEX_BUILD
#endif

#include "Reflex/Builder/TypedefBuilder.h"
#include "Reflex/Builder/TypeBuilder.h"

#include "Typedef.h"

#include "Reflex/internal/OwnedMember.h"


//-------------------------------------------------------------------------------
Reflex::TypedefBuilderImpl::TypedefBuilderImpl( const char * typ,
                                                      const Type & typedefType ) {
//-------------------------------------------------------------------------------
// Construct typedef info.
   fTypedef = TypedefTypeBuilder( typ, typedefType );
}


//-------------------------------------------------------------------------------
void Reflex::TypedefBuilderImpl::AddProperty( const char * key,
                                                    Any value ) {
//-------------------------------------------------------------------------------
// Attach a property to this typedef as Any object.
   fTypedef.Properties().AddProperty( key, value );
}


//-------------------------------------------------------------------------------
void Reflex::TypedefBuilderImpl::AddProperty( const char * key,
                                                    const char * value ) {
//-------------------------------------------------------------------------------
// Attach a property to this typedef as string.
   AddProperty( key, Any(value));
}


//-------------------------------------------------------------------------------
Reflex::Type Reflex::TypedefBuilderImpl::ToType() {
//-------------------------------------------------------------------------------
// Return the type currently being built.
   return fTypedef;
}
 TypedefBuilder.cxx:1
 TypedefBuilder.cxx:2
 TypedefBuilder.cxx:3
 TypedefBuilder.cxx:4
 TypedefBuilder.cxx:5
 TypedefBuilder.cxx:6
 TypedefBuilder.cxx:7
 TypedefBuilder.cxx:8
 TypedefBuilder.cxx:9
 TypedefBuilder.cxx:10
 TypedefBuilder.cxx:11
 TypedefBuilder.cxx:12
 TypedefBuilder.cxx:13
 TypedefBuilder.cxx:14
 TypedefBuilder.cxx:15
 TypedefBuilder.cxx:16
 TypedefBuilder.cxx:17
 TypedefBuilder.cxx:18
 TypedefBuilder.cxx:19
 TypedefBuilder.cxx:20
 TypedefBuilder.cxx:21
 TypedefBuilder.cxx:22
 TypedefBuilder.cxx:23
 TypedefBuilder.cxx:24
 TypedefBuilder.cxx:25
 TypedefBuilder.cxx:26
 TypedefBuilder.cxx:27
 TypedefBuilder.cxx:28
 TypedefBuilder.cxx:29
 TypedefBuilder.cxx:30
 TypedefBuilder.cxx:31
 TypedefBuilder.cxx:32
 TypedefBuilder.cxx:33
 TypedefBuilder.cxx:34
 TypedefBuilder.cxx:35
 TypedefBuilder.cxx:36
 TypedefBuilder.cxx:37
 TypedefBuilder.cxx:38
 TypedefBuilder.cxx:39
 TypedefBuilder.cxx:40
 TypedefBuilder.cxx:41
 TypedefBuilder.cxx:42
 TypedefBuilder.cxx:43
 TypedefBuilder.cxx:44
 TypedefBuilder.cxx:45
 TypedefBuilder.cxx:46
 TypedefBuilder.cxx:47
 TypedefBuilder.cxx:48
 TypedefBuilder.cxx:49
 TypedefBuilder.cxx:50
 TypedefBuilder.cxx:51
 TypedefBuilder.cxx:52
 TypedefBuilder.cxx:53
 TypedefBuilder.cxx:54
 TypedefBuilder.cxx:55
 TypedefBuilder.cxx:56