*this=HttpHdrCc();
}
+/// set a data member to a new value, and set the corresponding mask-bit.
+/// if setting is false, then the mask-bit is cleared.
+void
+HttpHdrCc::setValue(int32_t &value, int32_t new_value, HttpHdrCcType hdr, bool setting)
+{
+ if (setting) {
+ if (new_value < 0) {
+ debugs(65, 3, "rejecting negative-value Cache-Control directive " << hdr
+ << " value " << new_value);
+ return;
+ }
+ } else {
+ new_value = -1; //rely on the convention that "unknown" is -1
+ }
+
+ value = new_value;
+ setMask(hdr,setting);
+}
+
bool
HttpHdrCc::parse(const String & str)
{
return s;
}
-#if !_USE_INLINE_
-#include "HttpHdrCc.cci"
-#endif
-
+++ /dev/null
-/*
- * Copyright (C) 1996-2017 The Squid Software Foundation and contributors
- *
- * Squid software is distributed under GPLv2+ license and includes
- * contributions from numerous individuals and organizations.
- * Please see the COPYING and CONTRIBUTORS files for details.
- */
-
-/* DEBUG: section 65 HTTP Cache Control Header */
-
-#include "Debug.h"
-#include "defines.h"
-
-bool
-HttpHdrCc::isSet(HttpHdrCcType id) const
-{
- assert(id < HttpHdrCcType::CC_ENUM_END);
- return EBIT_TEST(mask, static_cast<long>(id));
-}
-
-void
-HttpHdrCc::setMask(HttpHdrCcType id, bool newval)
-{
- if (newval)
- EBIT_SET(mask,static_cast<long>(id));
- else
- EBIT_CLR(mask, static_cast<long>(id));
-}
-
-/// set a data member to a new value, and set the corresponding mask-bit.
-/// if setting is false, then the mask-bit is cleared.
-void
-HttpHdrCc::setValue(int32_t &value, int32_t new_value, HttpHdrCcType hdr, bool setting)
-{
- if (setting) {
- if (new_value < 0) {
- debugs(65,3,HERE << "rejecting negative-value Cache-Control directive " << hdr
- << " value " << new_value );
- return;
- }
- } else {
- new_value=-1; //rely on the convention that "unknown" is -1
- }
-
- value=new_value;
- setMask(hdr,setting);
-}
-
#ifndef SQUID_HTTPHDRCC_H
#define SQUID_HTTPHDRCC_H
+#include "defines.h"
#include "dlink.h"
#include "mem/forward.h"
#include "SquidString.h"
void clearImmutable() {setMask(HttpHdrCcType::CC_IMMUTABLE,false);}
/// check whether the attribute value supplied by id is set
- _SQUID_INLINE_ bool isSet(HttpHdrCcType id) const;
+ bool isSet(HttpHdrCcType id) const {
+ assert(id < HttpHdrCcType::CC_ENUM_END);
+ return EBIT_TEST(mask, static_cast<long>(id));
+ }
void packInto(Packable * p) const;
String no_cache; ///< List of headers sent as value for CC:no-cache="...". May be empty/undefined if the value is missing.
/// low-level part of the public set method, performs no checks
- _SQUID_INLINE_ void setMask(HttpHdrCcType id, bool newval=true);
- _SQUID_INLINE_ void setValue(int32_t &value, int32_t new_value, HttpHdrCcType hdr, bool setting=true);
+ void setMask(HttpHdrCcType id, bool newval=true) {
+ if (newval)
+ EBIT_SET(mask,static_cast<long>(id));
+ else
+ EBIT_CLR(mask, static_cast<long>(id));
+ }
+
+ void setValue(int32_t &value, int32_t new_value, HttpHdrCcType hdr, bool setting=true);
public:
/**comma-separated representation of the header values which were
void httpHdrCcUpdateStats(const HttpHdrCc * cc, StatHist * hist);
void httpHdrCcStatDumper(StoreEntry * sentry, int idx, double val, double size, int count);
-std::ostream&
-operator<< (std::ostream &, HttpHdrCcType);
-
-#if _USE_INLINE_
-#include "HttpHdrCc.cci"
-#endif
+std::ostream & operator<< (std::ostream &, HttpHdrCcType);
#endif /* SQUID_HTTPHDRCC_H */
HttpHeaderFieldStat.h \
HttpHdrCc.h \
HttpHdrCc.cc \
- HttpHdrCc.cci \
HttpHdrRange.cc \
HttpHdrSc.cc \
HttpHdrSc.h \
HttpHeaderFieldStat.h \
HttpHdrCc.h \
HttpHdrCc.cc \
- HttpHdrCc.cci \
HttpHdrContRange.cc \
HttpHdrContRange.h \
HttpHdrRange.cc \
HttpHeaderFieldStat.h \
HttpHdrCc.h \
HttpHdrCc.cc \
- HttpHdrCc.cci \
HttpHdrSc.cc \
HttpHdrScTarget.cc \
HttpMsg.cc \
HttpHeaderFieldStat.h \
HttpHdrCc.h \
HttpHdrCc.cc \
- HttpHdrCc.cci \
HttpHdrContRange.cc \
HttpHdrRange.cc \
HttpHdrSc.cc \
HttpHeaderFieldStat.h \
HttpHdrCc.h \
HttpHdrCc.cc \
- HttpHdrCc.cci \
HttpHdrContRange.cc \
HttpHdrSc.cc \
HttpHdrScTarget.cc \
HttpHeaderFieldStat.h \
HttpHdrCc.h \
HttpHdrCc.cc \
- HttpHdrCc.cci \
HttpHdrContRange.cc \
HttpHdrRange.cc \
HttpHdrSc.cc \
HttpHeaderFieldStat.h \
HttpHdrCc.h \
HttpHdrCc.cc \
- HttpHdrCc.cci \
HttpHdrContRange.cc \
HttpHdrRange.cc \
HttpHdrSc.cc \
HttpHeaderFieldStat.h \
HttpHdrCc.h \
HttpHdrCc.cc \
- HttpHdrCc.cci \
HttpHdrContRange.cc \
HttpHdrRange.cc \
HttpHdrSc.cc \
HttpHeaderFieldStat.h \
HttpHdrCc.h \
HttpHdrCc.cc \
- HttpHdrCc.cci \
HttpHdrContRange.cc \
HttpHdrRange.cc \
HttpHdrSc.cc \
HttpHeaderFieldStat.h \
HttpHdrCc.h \
HttpHdrCc.cc \
- HttpHdrCc.cci \
HttpHdrContRange.cc \
HttpHdrRange.cc \
HttpHdrSc.cc \
HttpHeaderFieldStat.h \
HttpHdrCc.h \
HttpHdrCc.cc \
- HttpHdrCc.cci \
HttpHdrSc.cc \
HttpHdrScTarget.cc \
url.cc \
HttpHeaderFieldStat.h \
HttpHdrCc.h \
HttpHdrCc.cc \
- HttpHdrCc.cci \
HttpHdrContRange.cc \
HttpHdrRange.cc \
HttpHdrSc.cc \