août
2013
aujourd’hui j’ai mis à jour Mee, en réintégrant mes Collections personnelles et une structure basée sur une string.
les listes ? parce que j’ai trouvé ce qui n’allait pas, à savoir les fonctions de comparaison & de tri. Elles sont nécessaires surtout pour les strings ( « toto » a une longueur de 4 mais en fait, en char[] c’est une longueur de 5 : {‘t’,’o’,’t’,’o’, »} (null-terminated ^^)) . Encore plus gênant avec les Dictionary qui ont des strings comme clé.
Pour ce qui est de la structure, c’est du à la découverte d’un bug. les classes héritant de StringBuilder sont mal libérées
.
J’en ai donc profité pour mettre à jour l’api Json, qui se rapproche un peu plus de sa cousine .Net.
avant pour naviguer dans le json avec json-glib :
string s = node.get_object().get_array_member("un").get_object_element(3).get_array_member("xxx").get_string_element(1)
mais avec mon api :
string s = node["un"]["3"]["xxx"]["1"].to_string()
bien plus court ! Malheureusement Vala n’aimant pas la surcharge et ayant du mal à retrouver les types depuis un void* (Type.from_instance ne fonctionnant que sur des objets), on retrouvera l’index d’un array en le passant en string. Il reste toujours la possibilité d’utiliser les fonctions.
à la prochaine .