Mariusz Sieroń 6 سال پیش
والد
کامیت
80af373f51

+ 26 - 1
assira.drafts/src/main/java/net/ranides/assira/prototype/LightObject.java

@@ -1,7 +1,32 @@
 package net.ranides.assira.prototype;
 
+import net.ranides.assira.collection.maps.OrderedMap;
+import net.ranides.assira.collection.sets.OrderedSet;
+
+import java.util.Optional;
+
 public interface LightObject {
 
-    Object get(String name);
+    /*
+
+    supported types:
+        - String
+        - Number
+        - Date
+        - LightObject
+        - LightList
+        -
+
+     */
+
+    Optional<Object> get(String name);
+
+    Optional<Object> set(String name, Object value);
+
+    Optional<Object> remove(String name);
+
+    OrderedSet<String> properties();
+
+    OrderedMap<String, Object> map();
 
 }

+ 19 - 0
assira.drafts/src/main/java/net/ranides/assira/prototype/LightType.java

@@ -0,0 +1,19 @@
+package net.ranides.assira.prototype;
+
+public interface LightType {
+
+    LightType STRING = null;
+    LightType NUMBER = null;
+    LightType BOOL = null;
+    LightType CHAR = null;
+    LightType DATE = null;
+    LightType DURATION = null;
+
+    // homogenic list <A>
+
+    // heterogenic list
+
+    // light object
+
+    // homogenic dictionary <A:B>
+}

+ 4 - 0
assira.drafts/src/main/java/net/ranides/assira/prototype/LightValue.java

@@ -0,0 +1,4 @@
+package net.ranides.assira.prototype;
+
+public interface LightValue {
+}