{% from "macros.tmpl" import license %} {{ license() }} #include "config.h" #ifdef SKIP_STATIC_CONSTRUCTORS_ON_GCC #define {{namespace|to_macro_style}}_NAMES_HIDE_GLOBALS 1 #endif #include "{{namespace}}Names.h" #include "wtf/StaticConstructors.h" namespace WebCore { namespace {{namespace}}Names { using namespace WTF; {% for entry in entries|sort %} {% if export %} DEFINE_GLOBAL(AtomicString, {{entry|symbol}}Storage) {{export}} const AtomicString& {{entry|symbol}} = *reinterpret_cast(&{{entry|symbol}}Storage); {% else %} DEFINE_GLOBAL(AtomicString, {{entry|symbol}}) {% endif %} {% endfor %} void init() { {% for entry in entries|sort %} StringImpl* {{entry|symbol}}Impl = StringImpl::createStatic("{{entry|cpp_name}}", {{entry|cpp_name|length}}, {{entry|cpp_name|hash}}); {% endfor %} {% for entry in entries|sort %} new ((void*)&{{entry|symbol}}) AtomicString({{entry|symbol}}Impl); {% endfor %} } } // {{namespace}} } // WebCore