misc/vim: inform the user when no results are found
[nit.git] / lib / json / json.nit
index 1e9522f..b458d01 100644 (file)
@@ -1,6 +1,7 @@
 # This file is part of NIT ( http://www.nitlanguage.org ).
 #
-# Copyright 2012-2013 Alexis Laferrière <alexis.laf@xymus.net>
+# Copyright 2014 Alexis Laferrière <alexis.laf@xymus.net>
+# Copyright 2014 Jean-Christophe Beaupré <jcbrinfo@users.noreply.github.com>
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-# Writing to and reading from the Json format.
-# Based on the json0 C library
+# Provides two APIs to manipulate JSON strings.
+#
+# Both `dynamic` and `static` modules provide at least a method to parse a
+# value written in JSON, but only `static` provide a method to translate a
+# value into JSON.
+#
+# The `dynamic` module provides a simple interface to get information
+# from a JSON document. You must be careful as all services are provided on
+# each nodes and a wrongful use can `abort`.
+#
+# The `static` module provides a common interface for anything that can be
+# translated into a JSON document. The provided parsing method return a
+# nullable Nit object that must then be type-checked before it can be used.
 module json
 
-import jsonable
-import json_reader
-import json_writer
-
-redef class String
-       fun json_load_from_file : nullable Map[ String, nullable Jsonable ]
-       do
-               var f = new IFStream.open( self )
-               var data = f.read_all.json_to_object
-               f.close
-
-               return data.as(not null) # ( Map[ String, nullable Jsonable ] )
-       end
-end
+import static
+import dynamic