lib/core: Renamed `Text::bytelen` to `Text::byte_length`
[nit.git] / lib / json / static.nit
index 7c0e2cf..dd1cc85 100644 (file)
@@ -31,6 +31,9 @@ private import json_lexer
 interface Jsonable
        # Encode `self` in JSON.
        #
+       # This is a recursive method which can be refined by any subclasses.
+       # To write any `Serializable` object to JSON, see `serialize_to_json`.
+       #
        # SEE: `append_json`
        fun to_json: String is abstract
 
@@ -136,7 +139,7 @@ redef class Text
        #     assert "\\nEscape\\t\\n".json_to_nit_string == "\nEscape\t\n"
        #     assert "\\u0041zu\\uD800\\uDFD3".json_to_nit_string == "Azu𐏓"
        protected fun json_to_nit_string: String do
-               var res = new FlatBuffer.with_capacity(bytelen)
+               var res = new FlatBuffer.with_capacity(byte_length)
                var i = 0
                var ln = self.length
                while i < ln do
@@ -185,7 +188,7 @@ redef class Text
        #     "\"\\t\\\"http://example.com\\\"\\r\\n\\u0000\\\\\""
        # ~~~
        redef fun to_json do
-               var b = new FlatBuffer.with_capacity(bytelen)
+               var b = new FlatBuffer.with_capacity(byte_length)
                append_json(b)
                return b.to_s
        end
@@ -439,6 +442,11 @@ redef class JsonParseError
                                "\"position\":{position.to_json}," +
                                "\"message\":{message.to_json}\}"
        end
+
+       redef fun pretty_json_visit(buf, indents) do
+               buf.clear
+               buf.append(to_json)
+       end
 end
 
 redef class Position