2015-10-16 18:36:59 +03:00
|
|
|
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
|
|
|
|
|
|
|
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
|
|
|
|
#ifndef mozilla_net_ARefBase_h
|
|
|
|
#define mozilla_net_ARefBase_h
|
|
|
|
|
2016-01-09 04:20:50 +03:00
|
|
|
#include "nscore.h"
|
|
|
|
|
2015-10-16 18:36:59 +03:00
|
|
|
namespace mozilla {
|
|
|
|
namespace net {
|
|
|
|
|
|
|
|
// This is an abstract class that can be pointed to by either
|
|
|
|
// nsCOMPtr or nsRefPtr. nsHttpConnectionMgr uses it for generic
|
|
|
|
// objects that need to be reference counted - similiar to nsISupports
|
|
|
|
// but it may or may not be xpcom.
|
|
|
|
|
|
|
|
class ARefBase {
|
|
|
|
public:
|
2018-04-30 19:46:04 +03:00
|
|
|
ARefBase() = default;
|
|
|
|
virtual ~ARefBase() = default;
|
2015-10-16 18:36:59 +03:00
|
|
|
|
2017-01-25 22:51:34 +03:00
|
|
|
NS_INLINE_DECL_PURE_VIRTUAL_REFCOUNTING
|
2015-10-16 18:36:59 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
} // namespace net
|
|
|
|
} // namespace mozilla
|
|
|
|
|
|
|
|
#endif
|