summaryrefslogtreecommitdiff
path: root/cpp/src/Ice/Reference.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/Ice/Reference.cpp')
-rw-r--r--cpp/src/Ice/Reference.cpp40
1 files changed, 20 insertions, 20 deletions
diff --git a/cpp/src/Ice/Reference.cpp b/cpp/src/Ice/Reference.cpp
index ec01c77192c..3c77087b837 100644
--- a/cpp/src/Ice/Reference.cpp
+++ b/cpp/src/Ice/Reference.cpp
@@ -32,59 +32,59 @@ using namespace IceInternal;
void IceInternal::incRef(IceInternal::Reference* p) { p->__incRef(); }
void IceInternal::decRef(IceInternal::Reference* p) { p->__decRef(); }
+const Context&
+IceInternal::Reference::getContext() const
+{
+ return _hasContext ? _context : _instance->getDefaultContext();
+}
+
ReferencePtr
-IceInternal::Reference::changeMode(Mode newMode) const
+IceInternal::Reference::defaultContext() const
{
- if(newMode == _mode)
+ if(!_hasContext)
{
return ReferencePtr(const_cast<Reference*>(this));
}
ReferencePtr r = _instance->referenceFactory()->copy(this);
- r->_mode = newMode;
+ r->_hasContext = false;
+ r->_context.clear();
return r;
}
ReferencePtr
-IceInternal::Reference::changeIdentity(const Identity& newIdentity) const
+IceInternal::Reference::changeContext(const Context& newContext) const
{
- if(newIdentity == _identity)
+ if(_hasContext && newContext == _context)
{
return ReferencePtr(const_cast<Reference*>(this));
}
ReferencePtr r = _instance->referenceFactory()->copy(this);
- r->_identity = newIdentity;
+ r->_hasContext = true;
+ r->_context = newContext;
return r;
}
-const Context&
-IceInternal::Reference::getContext() const
-{
- return _hasContext ? _context : _instance->getDefaultContext();
-}
-
ReferencePtr
-IceInternal::Reference::changeContext(const Context& newContext) const
+IceInternal::Reference::changeMode(Mode newMode) const
{
- if(_hasContext && newContext == _context)
+ if(newMode == _mode)
{
return ReferencePtr(const_cast<Reference*>(this));
}
ReferencePtr r = _instance->referenceFactory()->copy(this);
- r->_hasContext = true;
- r->_context = newContext;
+ r->_mode = newMode;
return r;
}
ReferencePtr
-IceInternal::Reference::defaultContext() const
+IceInternal::Reference::changeIdentity(const Identity& newIdentity) const
{
- if(!_hasContext)
+ if(newIdentity == _identity)
{
return ReferencePtr(const_cast<Reference*>(this));
}
ReferencePtr r = _instance->referenceFactory()->copy(this);
- r->_hasContext = false;
- r->_context.clear();
+ r->_identity = newIdentity;
return r;
}