eJson initial import

This commit is contained in:
jvelilla
2008-05-24 14:23:27 +00:00
commit 308fa7f2e7
13 changed files with 854 additions and 0 deletions

View File

@@ -0,0 +1,97 @@
indexing
description: "Objects that ..."
author: ""
date: "$Date$"
revision: "$Revision$"
class
JSON_READER
create
make
feature -- Access
make(a_json:STRING) is
--
do
representation:=a_json
index:=1
end
read:CHARACTER is
--
do
if not representation.is_empty then
Result:= representation.item (index)
end
end
actual:CHARACTER is
--
do
Result:=representation.item (index)
end
has_next:BOOLEAN is
--
do
if index <= representation.count then
Result:=True
end
end
has_previous:BOOLEAN is
--
do
if index >=1 then
Result:=True
end
end
next is
--
require
has_more_elements: has_next
do
index:=index + 1
ensure
incremented: old index + 1 = index
end
previous is
--
require
not_is_first: has_previous
do
index:=index - 1
ensure
incremented: old index - 1 = index
end
skip_withe_spaces is
-- Remove withe spaces
do
from
until not actual.is_space and has_next
loop
next
end
end
json_substring (start_index, end_index: INTEGER_32):STRING is
--
do
Result:=representation.substring (start_index, end_index)
end
feature -- Implementation
representation:STRING
--linear representation of the original json string
index:INTEGER
--actual index
end