class EE::UI::CSS::PropertySpecification

#include <propertyspecification.hpp>

class PropertySpecification {
public:
    // construction

    ~PropertySpecification();

    // methods

    PropertyDefinition& registerProperty(PropertyId id, const std::string& propertyName, const std::string& defaultValue, bool inherited);
    PropertyDefinition* registerProperty(const std::string& propertyName, const std::string& defaultValue, bool inherited);
    const PropertyDefinition* getProperty(const PropertyId& id) const;
    const PropertyDefinition* getProperty(const char* name) const;
    const PropertyDefinition* getProperty(std::string_view name) const;
    const PropertyDefinition* getProperty(const std::string& name) const;
    ShorthandDefinition& registerShorthand(ShorthandId id, const std::string& name, const std::vector<std::string>& properties, const std::string& shorthandParserName);
    ShorthandDefinition* registerShorthand(const std::string& name, const std::vector<std::string>& properties, const std::string& shorthandParserName);
    const ShorthandDefinition* getShorthand(const ShorthandId& id) const;
    const ShorthandDefinition* getShorthand(const std::string& name) const;
    bool isShorthand(const std::string& name) const;
    const PropertyIdSet& getInheritableProperties() const;
    void finalizeBuiltins();
};