virtual VALUE<CELLADAPTER> ceefit_call_spec GetType(const STRING& name) { CELLADAPTER* type = null; if(name.IsEqual("boolean")) { type = new FITFIELD<bool>(); } else if(name.IsEqual("integer")) { type = new FITFIELD<signed int>(); } else if(name.IsEqual("real")) { type = new FITFIELD<float>(); } else if(name.IsEqual("string")) { type = new FITFIELD<STRING>(); } //name.equals("date") ? Date.class : else if(name.IsEqual("money")) { type = new FITFIELD< CEEFAT::MONEY >(); } else if(name.IsEqual("scientific")) { type = new FITFIELD< SCIENTIFICDOUBLE >(); } else if(name.IsEqual("integers")) { type = new FITFIELD< DYNARRAY<int> >(); } else if(name.IsEqual("booleans")) { type = new FITFIELD< DYNARRAY<bool> >(); } else if(name.IsEqual("strings")) { type = new FITFIELD< DYNARRAY<STRING> >(); } if (type == null) { throw new EXCEPTION(STRING("Unimplemented choice ") + name); } return(VALUE<CELLADAPTER>(type)); }
void ceefit_call_spec FIXTURE::CreateFixtureByAlias(PTR<FIXTURE>& out, const STRING& aAlias) { SLINKLIST<FIXTUREFACTORY>& aList = RUNNER::GetFixtureFactoryList(); FIXTUREFACTORY* aFactory = aList.GetHead(); while(aFactory != null) { const char* bAlias = aFactory->GetAlias(); if(bAlias != null && aAlias.IsEqual(bAlias)) { aFactory->CreateFixture(out); return; } aFactory = aFactory->GetNext(); } out = null; }
void ceefit_call_spec FIXTURE::CreateFixtureByClassName(PTR<FIXTURE>& out, const STRING& className) { SLINKLIST<FIXTUREFACTORY>& aList = RUNNER::GetFixtureFactoryList(); FIXTUREFACTORY* aFactory = aList.GetHead(); while(aFactory != null) { const char* aName = aFactory->GetName(); if(aName != null && className.IsEqual(aName)) { aFactory->CreateFixture(out); return; } aFactory = aFactory->GetNext(); } out = null; }