#include "config.h"
#include "BorderData.h"
#include "OutlineValue.h"
#include <wtf/text/TextStream.h>
namespace WebCore {
TextStream& operator<<(TextStream& ts, const BorderValue& borderValue)
{
ts << borderValue.width() << " " << borderValue.style() << " " << borderValue.color();
return ts;
}
TextStream& operator<<(TextStream& ts, const OutlineValue& outlineValue)
{
ts << static_cast<const BorderValue&>(outlineValue);
ts.dumpProperty("outline-offset", outlineValue.offset());
return ts;
}
void BorderData::dump(TextStream& ts, DumpStyleValues behavior) const
{
if (behavior == DumpStyleValues::All || left() != BorderValue())
ts.dumpProperty("left", left());
if (behavior == DumpStyleValues::All || right() != BorderValue())
ts.dumpProperty("right", right());
if (behavior == DumpStyleValues::All || top() != BorderValue())
ts.dumpProperty("top", top());
if (behavior == DumpStyleValues::All || bottom() != BorderValue())
ts.dumpProperty("bottom", bottom());
ts.dumpProperty("image", image());
if (behavior == DumpStyleValues::All || !topLeftRadius().isZero())
ts.dumpProperty("top-left", topLeftRadius());
if (behavior == DumpStyleValues::All || !topRightRadius().isZero())
ts.dumpProperty("top-right", topRightRadius());
if (behavior == DumpStyleValues::All || !bottomLeftRadius().isZero())
ts.dumpProperty("bottom-left", bottomLeftRadius());
if (behavior == DumpStyleValues::All || !bottomRightRadius().isZero())
ts.dumpProperty("bottom-right", bottomRightRadius());
}
TextStream& operator<<(TextStream& ts, const BorderData& borderData)
{
borderData.dump(ts);
return ts;
}
}