mirror of
				https://github.com/RGBCube/serenity
				synced 2025-10-31 17:22:43 +00:00 
			
		
		
		
	 0634d11318
			
		
	
	
		0634d11318
		
	
	
	
	
		
			
			Otherwise `attr(|name, "fallback")` becomes `attr(| name , "fallback")` The test here is slightly aspirational. There are other rules for serialization we don't follow (like stripping whitespace entirely from many places) so these are marked with FIXMEs.
		
			
				
	
	
		
			34 lines
		
	
	
	
		
			717 B
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			34 lines
		
	
	
	
		
			717 B
		
	
	
	
		
			C++
		
	
	
	
	
	
| /*
 | |
|  * Copyright (c) 2020-2021, the SerenityOS developers.
 | |
|  * Copyright (c) 2021-2023, Sam Atkins <atkinssj@serenityos.org>
 | |
|  *
 | |
|  * SPDX-License-Identifier: BSD-2-Clause
 | |
|  */
 | |
| 
 | |
| #include <LibWeb/CSS/Parser/Function.h>
 | |
| #include <LibWeb/CSS/Serialize.h>
 | |
| 
 | |
| namespace Web::CSS::Parser {
 | |
| 
 | |
| Function::Function(FlyString name, Vector<ComponentValue>&& values)
 | |
|     : m_name(move(name))
 | |
|     , m_values(move(values))
 | |
| {
 | |
| }
 | |
| 
 | |
| Function::~Function() = default;
 | |
| 
 | |
| String Function::to_string() const
 | |
| {
 | |
|     StringBuilder builder;
 | |
| 
 | |
|     serialize_an_identifier(builder, m_name);
 | |
|     builder.append('(');
 | |
|     for (auto& item : m_values)
 | |
|         builder.append(item.to_string());
 | |
|     builder.append(')');
 | |
| 
 | |
|     return MUST(builder.to_string());
 | |
| }
 | |
| 
 | |
| }
 |