Implemented escaping of slash '/' only in case of '</' to avoid potential issue with javascript and </script> Many feature renaming to match Eiffel style and naming convention, kept previous feature as obsolete. Restructured the library to make easy extraction of "converter" classes if needed in the future. Updated part of the code to use new feature names.
39 lines
620 B
Plaintext
39 lines
620 B
Plaintext
note
|
|
description: "A JSON converter"
|
|
author: "Paul Cohen"
|
|
date: "$Date$"
|
|
revision: "$Revision$"
|
|
file: "$HeadURL: $"
|
|
|
|
deferred class
|
|
JSON_CONVERTER
|
|
|
|
inherit
|
|
|
|
SHARED_EJSON
|
|
|
|
feature -- Access
|
|
|
|
object: ANY
|
|
-- Eiffel object
|
|
deferred
|
|
end
|
|
|
|
feature -- Conversion
|
|
|
|
from_json (j: attached like to_json): detachable like object
|
|
-- Convert from JSON value.
|
|
-- Returns Void if unable to convert
|
|
deferred
|
|
end
|
|
|
|
to_json (o: like object): detachable JSON_VALUE
|
|
-- Convert to JSON value
|
|
deferred
|
|
end
|
|
|
|
invariant
|
|
has_eiffel_object: object /= Void -- An empty object must be created at creation time!
|
|
|
|
end
|