File: VariantDemo.cs

package info (click to toggle)
gnome-subtitles 1.8-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, sid
  • size: 103,144 kB
  • sloc: xml: 406,395; cs: 364,495; ansic: 3,104; perl: 1,477; sh: 769; python: 545; javascript: 500; makefile: 49
file content (51 lines) | stat: -rw-r--r-- 1,416 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
using System;
using System.Collections.Generic;
using GLib;

namespace sample
{
	public class VariantDemo
	{
		public VariantDemo ()
		{
			var strv = new string[] {"String 1", "String 2"};
			var variant = new Variant (strv);
			Console.WriteLine (variant.Print (true));

			variant = Variant.NewTuple (new Variant[] {variant, new Variant ("String 3")});
			Console.WriteLine (variant.Print (true));

			variant = Variant.NewTuple (null);
			Console.WriteLine (variant.Print (true));

			variant = Variant.NewArray (new Variant[] {new Variant ("String 4"), new Variant ("String 5")});
			Console.WriteLine (variant.Print (true));

			variant = Variant.NewArray (VariantType.String, null);
			Console.WriteLine (variant.Print (true));

			var dict = new Dictionary<string, Variant> ();
			dict.Add ("strv", new Variant (strv));
			dict.Add ("unit", Variant.NewTuple (null));
			dict.Add ("str", new Variant ("String 6"));
			variant = new Variant (dict);
			Console.WriteLine (variant.Print (true));

			var asv = variant.ToAsv ();
			Console.WriteLine ("strv: " + asv["strv"].Print(true));
			Console.WriteLine ("unit: " + asv["unit"].Print(true));

			Console.WriteLine ("type: " + variant.Type.ToString ());

			Variant tmp;
			asv.TryGetValue ("str", out tmp);
			var str = (string) tmp;
			Console.WriteLine ("out str " + str);
		}

		public static void Main (string[] args)
		{
			new VariantDemo ();
		}
	}
}