/* * Copyright (c) 2018-2020, Andreas Kling * Copyright (c) 2021, Tobias Christiansen * Copyright (c) 2021-2023, Sam Atkins * Copyright (c) 2022-2023, MacDue * * SPDX-License-Identifier: BSD-2-Clause */ #include "GridTrackPlacementShorthandStyleValue.h" #include namespace Web::CSS { ErrorOr> GridTrackPlacementShorthandStyleValue::create(ValueComparingNonnullRefPtr start, ValueComparingNonnullRefPtr end) { return adopt_nonnull_ref_or_enomem(new (nothrow) GridTrackPlacementShorthandStyleValue(move(start), move(end))); } ErrorOr> GridTrackPlacementShorthandStyleValue::create(GridTrackPlacement start) { return adopt_nonnull_ref_or_enomem(new (nothrow) GridTrackPlacementShorthandStyleValue( TRY(GridTrackPlacementStyleValue::create(start)), TRY(GridTrackPlacementStyleValue::create(GridTrackPlacement::make_auto())))); } ErrorOr GridTrackPlacementShorthandStyleValue::to_string() const { if (m_properties.end->grid_track_placement().is_auto()) return String::formatted("{}", TRY(m_properties.start->grid_track_placement().to_string())); return String::formatted("{} / {}", TRY(m_properties.start->grid_track_placement().to_string()), TRY(m_properties.end->grid_track_placement().to_string())); } }