Guest User

g_object_unref: assertion `G_IS_OBJECT (object)' failed

a guest
Dec 12th, 2012
274
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Vala 1.08 KB | None | 0 0
  1. using Gee;
  2.  
  3.  
  4. public abstract class cAbstractObject<G> : Object, Iterable<G> {
  5.     protected  string _name;
  6.     protected  ArrayList<G> _objects = new ArrayList<G>();
  7.    
  8.     public string name { get { return this._name; } set { this._name = value; } }    
  9.     public ArrayList<G> objects { get { return  _objects; } }
  10.    
  11.    
  12.     public int size { get { return _objects.size; } }
  13.    
  14.     public Type element_type {
  15.         get { return typeof (G); }
  16.     }
  17.  
  18.     public Iterator<G> iterator () {
  19.         return _objects.iterator();
  20.     }
  21.    
  22.     public virtual void add(G o) {
  23.         _objects.add(o);
  24.     }
  25.        
  26.     public new G? get (int index) {
  27.         assert (index >= 0); assert (index < _objects.size);
  28.         return  _objects[index];
  29.     }
  30.  
  31. }
  32.  
  33. public class cObject : cAbstractObject<cObject>  {
  34.     public  cObject(string name) {
  35.         this._name = name;
  36.     }
  37.  
  38.     public new void add(cObject o) {
  39.         stdout.printf ("adding %s\n", o.name);
  40.         _objects.add(o);
  41.     }
  42.    
  43. }
  44.  
  45. void main() {
  46.     cObject o1 = new cObject("test1"); 
  47.  
  48.     o1.add(new cObject("test2"));
  49.  
  50.     cObject o2 = o1.get(0);
  51.     stdout.printf ("++--> %s\n", o2.name);
  52.    
  53. }
Advertisement
Add Comment
Please, Sign In to add comment