Implement CSS `display: flow-root` (modern clearfix)
[WebKit-https.git] / Source / WebCore / rendering / style / GridArea.h
index 082620f..db80185 100644 (file)
@@ -1,6 +1,6 @@
 /*
  * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014, 2016 Igalia S.L.
+ * Copyright (C) 2013-2017 Igalia S.L.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
@@ -31,7 +31,7 @@
 
 #pragma once
 
-#include "GridPositionsResolver.h"
+#include "GridPosition.h"
 #include <wtf/HashMap.h>
 #include <wtf/text/WTFString.h>
 
@@ -148,7 +148,7 @@ private:
     GridSpan(int startLine, int endLine, GridSpanType type)
         : m_type(type)
     {
-#if ENABLE(ASSERT)
+#if !ASSERT_DISABLED
         ASSERT(startLine < endLine);
         if (type == TranslatedDefinite) {
             ASSERT(startLine >= 0);
@@ -156,8 +156,8 @@ private:
         }
 #endif
 
-        m_startLine = std::max(-kGridMaxTracks, std::min(startLine, kGridMaxTracks - 1));
-        m_endLine = std::max(-kGridMaxTracks + 1, std::min(endLine, kGridMaxTracks));
+        m_startLine = std::max(GridPosition::min(), std::min(startLine, GridPosition::max() - 1));
+        m_endLine = std::max(GridPosition::min() + 1, std::min(endLine, GridPosition::max()));
     }
 
     int m_startLine;
@@ -169,6 +169,7 @@ private:
 
 // This represents a grid area that spans in both rows' and columns' direction.
 class GridArea {
+    WTF_MAKE_FAST_ALLOCATED;
 public:
     // HashMap requires a default constuctor.
     GridArea()