Type &obj = StructAtOffset<Type> (*CharP(base), offset);
return likely (obj.sanitize (SANITIZE_ARG)) || neuter (SANITIZE_ARG);
}
- inline bool sanitize (SANITIZE_ARG_DEF, void *base, void *base2) {
- TRACE_SANITIZE ();
- if (!SANITIZE_SELF ()) return false;
- unsigned int offset = *this;
- if (unlikely (!offset)) return true;
- Type &obj = StructAtOffset<Type> (*CharP(base), offset);
- return likely (obj.sanitize (SANITIZE_ARG, base2)) || neuter (SANITIZE_ARG);
- }
- inline bool sanitize (SANITIZE_ARG_DEF, void *base, unsigned int user_data) {
+ template <typename T>
+ inline bool sanitize (SANITIZE_ARG_DEF, void *base, T user_data) {
TRACE_SANITIZE ();
if (!SANITIZE_SELF ()) return false;
unsigned int offset = *this;
return false;
return true;
}
- inline bool sanitize (SANITIZE_ARG_DEF, void *base, void *base2) {
- TRACE_SANITIZE ();
- if (!likely (sanitize_shallow (SANITIZE_ARG))) return false;
- unsigned int count = len;
- for (unsigned int i = 0; i < count; i++)
- if (!array()[i].sanitize (SANITIZE_ARG, base, base2))
- return false;
- return true;
- }
- inline bool sanitize (SANITIZE_ARG_DEF, void *base, unsigned int user_data) {
+ template <typename T>
+ inline bool sanitize (SANITIZE_ARG_DEF, void *base, T user_data) {
TRACE_SANITIZE ();
if (!likely (sanitize_shallow (SANITIZE_ARG))) return false;
unsigned int count = len;
TRACE_SANITIZE ();
return OffsetArrayOf<Type>::sanitize (SANITIZE_ARG, CharP(this));
}
- inline bool sanitize (SANITIZE_ARG_DEF, unsigned int user_data) {
+ template <typename T>
+ inline bool sanitize (SANITIZE_ARG_DEF, T user_data) {
TRACE_SANITIZE ();
return OffsetArrayOf<Type>::sanitize (SANITIZE_ARG, CharP(this), user_data);
}
&& SANITIZE_WITH_BASE (this, markCoverage)
&& SANITIZE_WITH_BASE (this, baseCoverage)
&& SANITIZE_WITH_BASE (this, markArray)
- && likely (baseArray.sanitize (SANITIZE_ARG, CharP(this), classCount));
+ && likely (baseArray.sanitize (SANITIZE_ARG, CharP(this), (unsigned int) classCount));
}
private:
&& SANITIZE_WITH_BASE (this, markCoverage)
&& SANITIZE_WITH_BASE (this, ligatureCoverage)
&& SANITIZE_WITH_BASE (this, markArray)
- && likely (ligatureArray.sanitize (SANITIZE_ARG, CharP(this), classCount));
+ && likely (ligatureArray.sanitize (SANITIZE_ARG, CharP(this), (unsigned int) classCount));
}
private:
&& SANITIZE_WITH_BASE (this, mark1Coverage)
&& SANITIZE_WITH_BASE (this, mark2Coverage)
&& SANITIZE_WITH_BASE (this, mark1Array)
- && likely (mark2Array.sanitize (SANITIZE_ARG, CharP(this), classCount));
+ && likely (mark2Array.sanitize (SANITIZE_ARG, CharP(this), (unsigned int) classCount));
}
private: