blob: fe77d0c0b35828a9b7b82ec4fac6378c770b11cf [file] [log] [blame]
{% from "macros.tmpl" import wrap_with_condition, license -%}
{{ license() }}
#ifndef InternalRuntimeFlags_h
#define InternalRuntimeFlags_h
#include "RuntimeEnabledFeatures.h"
#include "wtf/PassRefPtr.h"
#include "wtf/RefPtr.h"
#include "wtf/RefCounted.h"
namespace WebCore {
class InternalRuntimeFlags : public RefCounted<InternalRuntimeFlags> {
public:
static PassRefPtr<InternalRuntimeFlags> create()
{
return adoptRef(new InternalRuntimeFlags);
}
{#-
Setting after startup does not work for most runtime flags, but we
could add an option to print setters for ones which do:
void set{{feature.name}}Enabled(bool isEnabled) { RuntimeEnabledFeatures::set{{feature.name}}Enabled(isEnabled); }
If we do that, we also need to respect Internals::resetToConsistentState.
#}
{% for feature in features if not feature.custom %}
{%- call wrap_with_condition(feature.condition) %}
bool {{feature.first_lowered_name}}Enabled() { return RuntimeEnabledFeatures::{{feature.first_lowered_name}}Enabled(); }
{%- endcall %}
{% endfor %}
private:
InternalRuntimeFlags() { }
};
} // namespace WebCore
#endif // InternalRuntimeFlags_h