DeclareType[RuleTreeInfo][
Get[prop_?propertyQ] :=
With[{result = getProperty[$content, prop]},
result /; result =!= $Failed]
, Get[prop_] := $Failed
, Normal[] := $content
, ToString[] := toCodeString[$self@Normal[]]
, Delete[prop_?propertyQ] :=
resetContent[$self, removeOptions[$content, prop]]
, Replace[changeTree_] :=
resetContent[$self, mergeOptions[$content, changeTree]]
, read[] := read[$self]
, save[] := save[$self]
, bindToFile[file_String] :=
Module[{},
Evaluate[$self] /: read[$self] :=