mirror of
				https://github.com/RGBCube/serenity
				synced 2025-10-31 05:12:44 +00:00 
			
		
		
		
	 269810b954
			
		
	
	
		269810b954
		
	
	
	
	
		
			
			This means deviating slightly from the spec in order to construct a fully-initialized Declaration instead of creating an empty one and then poking at its internals. DeclarationOrAtRule should probably use a Variant, but for now, making its Declaration member optional is quick and easy.
		
			
				
	
	
		
			33 lines
		
	
	
	
		
			737 B
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			33 lines
		
	
	
	
		
			737 B
		
	
	
	
		
			C++
		
	
	
	
	
	
| /*
 | |
|  * Copyright (c) 2020-2021, the SerenityOS developers.
 | |
|  *
 | |
|  * SPDX-License-Identifier: BSD-2-Clause
 | |
|  */
 | |
| 
 | |
| #pragma once
 | |
| 
 | |
| #include <AK/String.h>
 | |
| #include <AK/Vector.h>
 | |
| #include <LibWeb/CSS/CSSStyleDeclaration.h>
 | |
| #include <LibWeb/CSS/Parser/ComponentValue.h>
 | |
| 
 | |
| namespace Web::CSS::Parser {
 | |
| 
 | |
| class Declaration {
 | |
| public:
 | |
|     Declaration(FlyString name, Vector<ComponentValue> values, Important);
 | |
|     ~Declaration();
 | |
| 
 | |
|     StringView name() const { return m_name; }
 | |
|     Vector<ComponentValue> const& values() const { return m_values; }
 | |
|     Important importance() const { return m_important; }
 | |
| 
 | |
|     String to_string() const;
 | |
| 
 | |
| private:
 | |
|     FlyString m_name;
 | |
|     Vector<ComponentValue> m_values;
 | |
|     Important m_important { Important::No };
 | |
| };
 | |
| 
 | |
| }
 |