chromium/third_party/blink/renderer/core/layout/table/table_constraint_space_data.h

// Copyright 2020 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef THIRD_PARTY_BLINK_RENDERER_CORE_LAYOUT_TABLE_TABLE_CONSTRAINT_SPACE_DATA_H_
#define THIRD_PARTY_BLINK_RENDERER_CORE_LAYOUT_TABLE_TABLE_CONSTRAINT_SPACE_DATA_H_

#include "base/check_op.h"
#include "third_party/blink/renderer/core/layout/geometry/logical_size.h"
#include "third_party/blink/renderer/core/layout/table/table_column_location.h"
#include "third_party/blink/renderer/platform/geometry/layout_unit.h"
#include "third_party/blink/renderer/platform/text/writing_mode.h"
#include "third_party/blink/renderer/platform/wtf/ref_counted.h"
#include "third_party/blink/renderer/platform/wtf/vector.h"

namespace blink {

// The same TableConstraintSpaceData object gets passed on the constraint
// space to all rows and sections within a single table. It contains all the
// geometry information needed to layout sections/rows/cells. This is different
// from most other algorithms, where the constraint space data is not shared.
class TableConstraintSpaceData : public RefCounted<TableConstraintSpaceData> {};

}  // namespace blink

WTF_ALLOW_MOVE_INIT_AND_COMPARE_WITH_MEM_FUNCTIONS()
WTF_ALLOW_MOVE_AND_INIT_WITH_MEM_FUNCTIONS()
WTF_ALLOW_MOVE_AND_INIT_WITH_MEM_FUNCTIONS()

#endif  // THIRD_PARTY_BLINK_RENDERER_CORE_LAYOUT_TABLE_TABLE_CONSTRAINT_SPACE_DATA_H_