gecko-dev/editor/libeditor/JoinSplitNodeDirection.h
Masayuki Nakano a2e038d71f Bug 1795061 - Stop exposing JoinSplitNodeDirection.h r=m_kato
Including it in `HTMLEditor.h` causes creating static constructors for
the modules which include `HTMLEditor.h`.  And the public methods are used
only in the `libeditor`.  Therefore, we can make `HTMLEditor.h` stop including
it and stop exposing `JoinSplitNodeDirection.h`.

Differential Revision: https://phabricator.services.mozilla.com/D159363
2022-10-19 06:40:30 +00:00

52 lines
1.7 KiB
C++

/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#ifndef JoinSplitNodeDirection_h
#define JoinSplitNodeDirection_h
#include <iostream>
namespace mozilla {
// JoinNodesDirection is also affected to which one is new node at splitting
// a node because a couple of undo/redo.
enum class JoinNodesDirection {
LeftNodeIntoRightNode,
RightNodeIntoLeftNode,
};
static inline std::ostream& operator<<(std::ostream& aStream,
JoinNodesDirection aJoinNodesDirection) {
if (aJoinNodesDirection == JoinNodesDirection::LeftNodeIntoRightNode) {
return aStream << "JoinNodesDirection::LeftNodeIntoRightNode";
}
if (aJoinNodesDirection == JoinNodesDirection::RightNodeIntoLeftNode) {
return aStream << "JoinNodesDirection::RightNodeIntoLeftNode";
}
return aStream << "Invalid value";
}
// SplitNodeDirection is also affected to which one is removed at joining a
// node because a couple of undo/redo.
enum class SplitNodeDirection {
LeftNodeIsNewOne,
RightNodeIsNewOne,
};
static inline std::ostream& operator<<(std::ostream& aStream,
SplitNodeDirection aSplitNodeDirection) {
if (aSplitNodeDirection == SplitNodeDirection::LeftNodeIsNewOne) {
return aStream << "SplitNodeDirection::LeftNodeIsNewOne";
}
if (aSplitNodeDirection == SplitNodeDirection::RightNodeIsNewOne) {
return aStream << "SplitNodeDirection::RightNodeIsNewOne";
}
return aStream << "Invalid value";
}
} // namespace mozilla
#endif // JoinSplitNodeDirection_h