Skip to content

bhaeussermann/DSON-Java

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DSON-Java

A complete, zero-dependency Java implementation of the Doge Serialized Object Notation (dogeon.org).

Supports both serialization and parsing. Properly converts all numbers from and to octal base.

Some of the code uses names so as to make the code more understandable by Shiba Inu dogs.

Usage

public static class DogeExample
{
    private String many;
    private List<String> such = new ArrayList<String>();
    
    public String getMany()
    {
        return many;
    }
    
    public void setMany(String newMany)
    {
        many = newMany;
    }
    
    public List<String> getSuch()
    {
        return such;
    }
}

Shibe.speak()

Serializes an object.

DogeExample d = new DogeExample();
d.setMany("wow");
d.getSuch().add("foo");
d.getSuch().add("doge");
d.getSuch().add("inu");

System.out.println(Shibe.speak(d));
such "many" is "wow","such" is so "foo" also "doge" and "inu" many wow

=====

DogeList list = new DogeList();
list.add("foo");
list.add("doge");
list.add("inu");

DogeThing thing = new DogeThing();
thing.put("such", list);
thing.put("many", "wow");

System.out.println(Shibe.speak(thing));
such "many" is "wow","such" is so "foo" also "doge" and "inu" many wow

Shibe.makeSense()

Parses a DSON string.

DogeThing d = (DogeThing)Shibe.makeSense("such \"many\" is \"wow\", \"such\" is so \"foo\" and \"doge\" and \"inu\" many wow");

System.out.println(d.get("many"));
for (Object next : (DogeList)d.get("such"))
    System.out.println(next);
wow
foo
doge
inu

=====

DogeExample d = (DogeExample)Shibe.makeSense("such \"many\" is \"wow\", \"such\" is so \"foo\" and \"doge\" and \"inu\" many wow", 
	DogeExample.class);

System.out.println(d.getMany());
for (String next : d.getSuch())
    System.out.println(next);
wow
foo
doge
inu

About

A Java implementation of the Doge Serialized Object Notation (http://dogeon.org/)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages