func (n *RGATreeListNode) PositionedAt() *time.Ticket {
	if n.elem.MovedAt() != nil {
		return n.elem.MovedAt()
	}
	return n.elem.CreatedAt()
}
PositionedAt returns the time this element was positioned.
package json
import (
	"strings"
	"github.com/yorkie-team/yorkie/internal/log"
	"github.com/yorkie-team/yorkie/pkg/document/time"
	"github.com/yorkie-team/yorkie/pkg/splay"
)
type RGATreeListNode struct {
	indexNode *splay.Node
	elem      Element
	prev *RGATreeListNode
	next *RGATreeListNode
}
func newRGATreeListNode(elem Element) *RGATreeListNode {
	node := &RGATreeListNode{
		prev: nil,
		next: nil,
		elem: elem,
	}
	node.indexNode = splay.NewNode(node)
	return node
}
func newRGATreeListNodeAfter(prev *RGATreeListNode, elem Element) *RGATreeListNode {
	newNode := newRGATreeListNode(elem)
	prevNext := prev.next
	prev.next = newNode
	newNode.prev = prev
	newNode.next = prevNext
	if prevNext != nil {
		prevNext.prev = newNode
	}
	return prev.next
}
func (n *RGATreeListNode) Element() Element {
	return n.elem
}
func (n *RGATreeListNode) CreatedAt() *time.Ticket {
	return n.elem.CreatedAt()
}