Ver Fonte

LibWeb: Add more CSS Token factory methods

The way we currently deal with `attr()` means having to manufacture
Tokens, so we need a way to do that from StyleComputer.
Sam Atkins há 1 ano atrás
pai
commit
6f45df5ced
1 ficheiros alterados com 17 adições e 1 exclusões
  1. 17 1
      Userland/Libraries/LibWeb/CSS/Parser/Token.h

+ 17 - 1
Userland/Libraries/LibWeb/CSS/Parser/Token.h

@@ -151,7 +151,7 @@ public:
     Position const& start_position() const { return m_start_position; }
     Position const& end_position() const { return m_end_position; }
 
-    static Token of_string(FlyString str)
+    static Token create_string(FlyString str)
     {
         Token token;
         token.m_type = Type::String;
@@ -184,6 +184,22 @@ public:
         return token;
     }
 
+    static Token create_ident(FlyString ident)
+    {
+        Token token;
+        token.m_type = Type::Ident;
+        token.m_value = move(ident);
+        return token;
+    }
+
+    static Token create_url(FlyString url)
+    {
+        Token token;
+        token.m_type = Type::Url;
+        token.m_value = move(url);
+        return token;
+    }
+
 private:
     Type m_type { Type::Invalid };