package com.alibaba.fastjson.serializer; public class SerialContext { private final SerialContext parent; private final Object object; private final Object fieldName; private int features = 0; public SerialContext(SerialContext parent, Object object, Object fieldName) { this.parent = parent; this.object = object; this.fieldName = fieldName; } public int getFeatures() { return features; } public void setFeatures(int features) { this.features = features; } public SerialContext getParent() { return parent; } public Object getObject() { return object; } public Object getFieldName() { return fieldName; } public String getPath() { if (parent == null) { return "$"; } else { if (fieldName instanceof Integer) { return parent.getPath() + "[" + fieldName + "]"; } else { return parent.getPath() + "." + fieldName; } } } public String toString() { return getPath(); } }