TupleAttributeDescriptor Struct Reference

A TupleAttributeDescriptor is a component of a TupleDescriptor, as explained in the design docs. More...

#include <TupleDescriptor.h>

List of all members.

Public Member Functions

 TupleAttributeDescriptor ()
 TupleAttributeDescriptor (StoredTypeDescriptor const &typeDescriptor, bool isNullable=false, TupleStorageByteLength cbStorage=0)
bool operator== (TupleAttributeDescriptor const &other) const

Public Attributes

StoredTypeDescriptor const * pTypeDescriptor
bool isNullable
TupleStorageByteLength cbStorage


Detailed Description

A TupleAttributeDescriptor is a component of a TupleDescriptor, as explained in the design docs.

Definition at line 42 of file TupleDescriptor.h.


Constructor & Destructor Documentation

TupleAttributeDescriptor::TupleAttributeDescriptor (  )  [explicit]

Definition at line 40 of file TupleDescriptor.cpp.

References cbStorage, isNullable, and pTypeDescriptor.

00041 {
00042     pTypeDescriptor = NULL;
00043     isNullable = false;
00044     cbStorage = 0;
00045 }

TupleAttributeDescriptor::TupleAttributeDescriptor ( StoredTypeDescriptor const &  typeDescriptor,
bool  isNullable = false,
TupleStorageByteLength  cbStorage = 0 
) [explicit]

Definition at line 47 of file TupleDescriptor.cpp.

References cbStorage, StoredTypeDescriptor::getFixedByteCount(), isNullable, and pTypeDescriptor.

00051 {
00052     pTypeDescriptor = &typeDescriptor;
00053     isNullable = isNullableInit;
00054     if (cbStorageInit) {
00055         uint cbFixed = typeDescriptor.getFixedByteCount();
00056         assert(!cbFixed || (cbFixed == cbStorageInit));
00057         cbStorage = cbStorageInit;
00058     } else {
00059         cbStorage = typeDescriptor.getFixedByteCount();
00060     }
00061 }


Member Function Documentation

bool TupleAttributeDescriptor::operator== ( TupleAttributeDescriptor const &  other  )  const

Definition at line 63 of file TupleDescriptor.cpp.

References cbStorage, StoredTypeDescriptor::getOrdinal(), isNullable, and pTypeDescriptor.

00065 {
00066     return
00067         (pTypeDescriptor->getOrdinal() == other.pTypeDescriptor->getOrdinal())
00068         && (isNullable == other.isNullable)
00069         && (cbStorage == other.cbStorage);
00070 }


Member Data Documentation

StoredTypeDescriptor const* TupleAttributeDescriptor::pTypeDescriptor

Definition at line 44 of file TupleDescriptor.h.

Referenced by TupleTest::checkAlignment(), UnalignedAttributeAccessor::compute(), TupleAccessor::compute(), ExtremeAggComputer::ExtremeAggComputer(), operator<<(), operator==(), CalcAssemblerTestCase::setTupleDatum(), CalcAssemblerTestCase::setTupleDatumMax(), CalcAssemblerTestCase::setTupleDatumMin(), TupleDescriptor::storageEqual(), and TupleAttributeDescriptor().

bool TupleAttributeDescriptor::isNullable

Definition at line 45 of file TupleDescriptor.h.

Referenced by UnalignedAttributeAccessor::compute(), TupleAccessor::compute(), operator<<(), operator==(), and TupleAttributeDescriptor().

TupleStorageByteLength TupleAttributeDescriptor::cbStorage

Definition at line 46 of file TupleDescriptor.h.

Referenced by TupleTest::checkAlignment(), UnalignedAttributeAccessor::compute(), TupleAccessor::compute(), DynamicParam::DynamicParam(), TupleAccessor::initFixedAccessors(), operator<<(), operator==(), CalcAssembler::setTupleDatum(), CalcAssemblerTestCase::setTupleDatum(), TupleDescriptor::storageEqual(), TupleAttributeDescriptor(), and DynamicParamManager::writeParam().


The documentation for this struct was generated from the following files:
Generated on Mon Jun 22 04:00:48 2009 for Fennel by  doxygen 1.5.1