version 1.1.2.6, 2004/09/16 15:47:46
|
version 1.1.2.7, 2004/09/16 21:00:34
|
|
|
PEGASUS_NAMESPACE_BEGIN | PEGASUS_NAMESPACE_BEGIN |
| |
void* CQLFactory::makeObject(CQLIdentifier* obj, FactoryType target){ | void* CQLFactory::makeObject(CQLIdentifier* obj, FactoryType target){ |
|
CQLChainedIdentifier _cid(*obj); |
switch(target){ | switch(target){ |
case ChainedIdentifier: | case ChainedIdentifier: |
return new CQLChainedIdentifier(*obj); |
_chainedIdentifier = _cid; |
|
return &_chainedIdentifier; |
break; | break; |
case Identifier: | case Identifier: |
return NULL; | return NULL; |
break; | break; |
default: | default: |
return makeObject(new CQLChainedIdentifier(*obj), target); |
return makeObject(&_chainedIdentifier, target); |
break; | break; |
} | } |
} | } |
void* CQLFactory::makeObject(CQLChainedIdentifier* obj, FactoryType target){ | void* CQLFactory::makeObject(CQLChainedIdentifier* obj, FactoryType target){ |
|
CQLValue _val(*obj); |
switch(target){ | switch(target){ |
case Value: | case Value: |
return new CQLValue(*obj); |
_value = _val; |
|
return &_value; |
break; | break; |
case ChainedIdentifier: | case ChainedIdentifier: |
return NULL; | return NULL; |
break; | break; |
default: | default: |
return makeObject(new CQLValue(*obj), target); |
return makeObject(&_value, target); |
break; | break; |
} | } |
| |
} | } |
void* CQLFactory::makeObject(CQLValue* obj, FactoryType target){ | void* CQLFactory::makeObject(CQLValue* obj, FactoryType target){ |
|
CQLFactor _fctr(*obj); |
switch(target){ | switch(target){ |
case Factor: | case Factor: |
return new CQLFactor(*obj); |
_factor = _fctr; |
|
return &_factor; |
break; | break; |
case Value: | case Value: |
return NULL; | return NULL; |
break; | break; |
default: | default: |
return makeObject(new CQLFactor(*obj), target); |
return makeObject(&_factor, target); |
break; | break; |
} | } |
| |
} | } |
|
void* CQLFactory::makeObject(CQLFunction* obj, FactoryType target){ |
|
CQLFactor _fctr(*obj); |
|
switch(target){ |
|
case Factor: |
|
_factor = _fctr; |
|
return &_factor; |
|
break; |
|
default: |
|
return makeObject(&_factor, target); |
|
break; |
|
} |
|
} |
void* CQLFactory::makeObject(CQLFactor* obj, FactoryType target){ | void* CQLFactory::makeObject(CQLFactor* obj, FactoryType target){ |
|
CQLTerm _trm(*obj); |
switch(target){ | switch(target){ |
case Term: | case Term: |
return new CQLTerm(*obj); |
_term = _trm; |
|
return &_term; |
break; | break; |
case Factor: | case Factor: |
return NULL; | return NULL; |
break; | break; |
default: | default: |
return makeObject(new CQLTerm(*obj), target); |
return makeObject(&_term, target); |
break; | break; |
} | } |
| |
} | } |
void* CQLFactory::makeObject(CQLTerm* obj, FactoryType target){ | void* CQLFactory::makeObject(CQLTerm* obj, FactoryType target){ |
|
CQLExpression _expr(*obj); |
switch(target){ | switch(target){ |
case Expression: | case Expression: |
return new CQLExpression(*obj); |
_expression = _expr; |
|
return &_expression; |
break; | break; |
case Term: | case Term: |
return NULL; | return NULL; |
break; | break; |
default: | default: |
return makeObject(new CQLExpression(*obj), target); |
return makeObject(&_expression, target); |
break; | break; |
} | } |
| |
} | } |
void* CQLFactory::makeObject(CQLExpression* obj, FactoryType target){ | void* CQLFactory::makeObject(CQLExpression* obj, FactoryType target){ |
|
CQLSimplePredicate _sp(*obj); |
switch(target){ | switch(target){ |
case SimplePredicate: | case SimplePredicate: |
return new CQLSimplePredicate(*obj); |
_simplePredicate = _sp; |
|
return &_simplePredicate; |
break; | break; |
case Expression: | case Expression: |
return NULL; | return NULL; |
break; | break; |
default: | default: |
return makeObject(new CQLSimplePredicate(*obj), target); |
return makeObject(&_simplePredicate, target); |
break; | break; |
} | } |
| |
} | } |
void* CQLFactory::makeObject(CQLSimplePredicate* obj, FactoryType target){ | void* CQLFactory::makeObject(CQLSimplePredicate* obj, FactoryType target){ |
|
CQLPredicate _pred(*obj); |
switch(target){ | switch(target){ |
case Predicate: | case Predicate: |
return new CQLPredicate(*obj); |
_predicate = _pred; |
|
return &_predicate; |
break; | break; |
default: | default: |
return NULL; | return NULL; |