vala r1757 - in trunk: . ccode compiler gee gobject tests vala



Author: juergbi
Date: Thu Aug 14 21:22:53 2008
New Revision: 1757
URL: http://svn.gnome.org/viewvc/vala?rev=1757&view=rev

Log:
2008-08-14  JÃrg Billeter  <j bitron ch>

	Don't derive from GObject in libvala where not necessary to improve
	compilation performance


Added:
   trunk/gee/collectionobject.vala
Modified:
   trunk/ChangeLog
   trunk/ccode/valaccodeassignment.vala
   trunk/ccode/valaccodebinaryexpression.vala
   trunk/ccode/valaccodecastexpression.vala
   trunk/ccode/valaccodecomment.vala
   trunk/ccode/valaccodeconditionalexpression.vala
   trunk/ccode/valaccodeconstant.vala
   trunk/ccode/valaccodedostatement.vala
   trunk/ccode/valaccodeelementaccess.vala
   trunk/ccode/valaccodeexpressionstatement.vala
   trunk/ccode/valaccodegotostatement.vala
   trunk/ccode/valaccodeidentifier.vala
   trunk/ccode/valaccodeifstatement.vala
   trunk/ccode/valaccodeincludedirective.vala
   trunk/ccode/valaccodelabel.vala
   trunk/ccode/valaccodelinedirective.vala
   trunk/ccode/valaccodemacroreplacement.vala
   trunk/ccode/valaccodememberaccess.vala
   trunk/ccode/valaccodenode.vala
   trunk/ccode/valaccodeoncesection.vala
   trunk/ccode/valaccodeparenthesizedexpression.vala
   trunk/ccode/valaccodeunaryexpression.vala
   trunk/ccode/valaccodevariabledeclarator.vala
   trunk/ccode/valaccodewhilestatement.vala
   trunk/ccode/valaccodewriter.vala
   trunk/compiler/valacompiler.vala
   trunk/gee/Makefile.am
   trunk/gee/arraylist.vala
   trunk/gee/hashmap.vala
   trunk/gee/hashset.vala
   trunk/gee/iterable.vala
   trunk/gee/iterator.vala
   trunk/gee/map.vala
   trunk/gee/readonlycollection.vala
   trunk/gee/readonlylist.vala
   trunk/gee/readonlymap.vala
   trunk/gee/readonlyset.vala
   trunk/gobject/valaccodecompiler.vala
   trunk/gobject/valaccodegenerator.vala
   trunk/gobject/valatyperegisterfunction.vala
   trunk/tests/arrays.vala
   trunk/vala/valaaddressofexpression.vala
   trunk/vala/valaarraycreationexpression.vala
   trunk/vala/valaarraylengthfield.vala
   trunk/vala/valaarraymovemethod.vala
   trunk/vala/valaarrayresizemethod.vala
   trunk/vala/valaassignment.vala
   trunk/vala/valabasicblock.vala
   trunk/vala/valabinaryexpression.vala
   trunk/vala/valablock.vala
   trunk/vala/valacastexpression.vala
   trunk/vala/valacfgbuilder.vala
   trunk/vala/valacharacterliteral.vala
   trunk/vala/valaclass.vala
   trunk/vala/valacodebinding.vala
   trunk/vala/valacodecontext.vala
   trunk/vala/valacodenode.vala
   trunk/vala/valacodevisitor.vala
   trunk/vala/valaconditionalexpression.vala
   trunk/vala/valaconstant.vala
   trunk/vala/valaconstructor.vala
   trunk/vala/valacreationmethod.vala
   trunk/vala/valadeclarationstatement.vala
   trunk/vala/valadelegate.vala
   trunk/vala/valadestructor.vala
   trunk/vala/valadostatement.vala
   trunk/vala/valadynamicmethod.vala
   trunk/vala/valadynamicproperty.vala
   trunk/vala/valadynamicsignal.vala
   trunk/vala/valaenum.vala
   trunk/vala/valaenumvalue.vala
   trunk/vala/valaerrorcode.vala
   trunk/vala/valaerrordomain.vala
   trunk/vala/valaexpressionstatement.vala
   trunk/vala/valafield.vala
   trunk/vala/valaforeachstatement.vala
   trunk/vala/valaformalparameter.vala
   trunk/vala/valaforstatement.vala
   trunk/vala/valagenieparser.vala
   trunk/vala/valageniescanner.vala
   trunk/vala/valaifstatement.vala
   trunk/vala/valainstancecast.vala
   trunk/vala/valainterface.vala
   trunk/vala/valainvocationexpression.vala
   trunk/vala/valalocalvariable.vala
   trunk/vala/valalockable.vala
   trunk/vala/valalockstatement.vala
   trunk/vala/valamember.vala
   trunk/vala/valamethod.vala
   trunk/vala/valanamedargument.vala
   trunk/vala/valanamespace.vala
   trunk/vala/valaparenthesizedexpression.vala
   trunk/vala/valaparser.vala
   trunk/vala/valapointerindirection.vala
   trunk/vala/valapostfixexpression.vala
   trunk/vala/valaproperty.vala
   trunk/vala/valareferencetransferexpression.vala
   trunk/vala/valascanner.vala
   trunk/vala/valascope.vala
   trunk/vala/valasignal.vala
   trunk/vala/valasourcefile.vala
   trunk/vala/valasourcefilecycle.vala
   trunk/vala/valasourcereference.vala
   trunk/vala/valastruct.vala
   trunk/vala/valaswitchsection.vala
   trunk/vala/valaswitchstatement.vala
   trunk/vala/valasymbol.vala
   trunk/vala/valatypecheck.vala
   trunk/vala/valatypeparameter.vala
   trunk/vala/valaunaryexpression.vala
   trunk/vala/valawhilestatement.vala

Modified: trunk/ccode/valaccodeassignment.vala
==============================================================================
--- trunk/ccode/valaccodeassignment.vala	(original)
+++ trunk/ccode/valaccodeassignment.vala	Thu Aug 14 21:22:53 2008
@@ -29,7 +29,7 @@
 	/**
 	 * Left hand side of the assignment.
 	 */
-	public CCodeExpression left { get; construct; }
+	public CCodeExpression left { get; set; }
 	
 	/**
 	 * Assignment operator.
@@ -39,7 +39,7 @@
 	/**
 	 * Right hand side of the assignment.
 	 */
-	public CCodeExpression right { get; construct; }
+	public CCodeExpression right { get; set; }
 	
 	public CCodeAssignment (CCodeExpression l, CCodeExpression r, CCodeAssignmentOperator op = CCodeAssignmentOperator.SIMPLE) {
 		left = l;

Modified: trunk/ccode/valaccodebinaryexpression.vala
==============================================================================
--- trunk/ccode/valaccodebinaryexpression.vala	(original)
+++ trunk/ccode/valaccodebinaryexpression.vala	Thu Aug 14 21:22:53 2008
@@ -34,12 +34,12 @@
 	/**
 	 * The left operand.
 	 */
-	public CCodeExpression left { get; set construct; }
+	public CCodeExpression left { get; set; }
 
 	/**
 	 * The right operand.
 	 */
-	public CCodeExpression right { get; set construct; }
+	public CCodeExpression right { get; set; }
 	
 	public CCodeBinaryExpression (CCodeBinaryOperator op, CCodeExpression l, CCodeExpression r) {
 		operator = op;

Modified: trunk/ccode/valaccodecastexpression.vala
==============================================================================
--- trunk/ccode/valaccodecastexpression.vala	(original)
+++ trunk/ccode/valaccodecastexpression.vala	Thu Aug 14 21:22:53 2008
@@ -29,12 +29,12 @@
 	/**
 	 * The expression to be cast.
 	 */
-	public CCodeExpression inner { get; set construct; }
+	public CCodeExpression inner { get; set; }
 	
 	/**
 	 * The target type.
 	 */
-	public string type_name { get; set construct; }
+	public string type_name { get; set; }
 	
 	public CCodeCastExpression (CCodeExpression expr, string type) {
 		inner = expr;

Modified: trunk/ccode/valaccodecomment.vala
==============================================================================
--- trunk/ccode/valaccodecomment.vala	(original)
+++ trunk/ccode/valaccodecomment.vala	Thu Aug 14 21:22:53 2008
@@ -29,7 +29,7 @@
 	/**
 	 * The text content of the comment.
 	 */
-	public string text { get; set construct; }
+	public string text { get; set; }
 	
 	public CCodeComment (string _text) {
 		text = _text;

Modified: trunk/ccode/valaccodeconditionalexpression.vala
==============================================================================
--- trunk/ccode/valaccodeconditionalexpression.vala	(original)
+++ trunk/ccode/valaccodeconditionalexpression.vala	Thu Aug 14 21:22:53 2008
@@ -29,17 +29,17 @@
 	/**
 	 * The condition.
 	 */
-	public CCodeExpression condition { get; set construct; }
+	public CCodeExpression condition { get; set; }
 	
 	/**
 	 * The expression to be evaluated if the condition holds.
 	 */
-	public CCodeExpression true_expression { get; set construct; }
+	public CCodeExpression true_expression { get; set; }
 	
 	/**
 	 * The expression to be evaluated if the condition doesn't hold.
 	 */
-	public CCodeExpression false_expression { get; set construct; }
+	public CCodeExpression false_expression { get; set; }
 	
 	public CCodeConditionalExpression (CCodeExpression cond, CCodeExpression true_expr, CCodeExpression false_expr) {
 		condition = cond;

Modified: trunk/ccode/valaccodeconstant.vala
==============================================================================
--- trunk/ccode/valaccodeconstant.vala	(original)
+++ trunk/ccode/valaccodeconstant.vala	Thu Aug 14 21:22:53 2008
@@ -29,7 +29,7 @@
 	/**
 	 * The name of this constant.
 	 */
-	public string name { get; set construct; }
+	public string name { get; set; }
 	
 	public CCodeConstant (string _name) {
 		name = _name;

Modified: trunk/ccode/valaccodedostatement.vala
==============================================================================
--- trunk/ccode/valaccodedostatement.vala	(original)
+++ trunk/ccode/valaccodedostatement.vala	Thu Aug 14 21:22:53 2008
@@ -34,7 +34,7 @@
 	/**
 	 * The loop condition.
 	 */
-	public CCodeExpression condition { get; set construct; }
+	public CCodeExpression condition { get; set; }
 	
 	public CCodeDoStatement (CCodeStatement stmt, CCodeExpression cond) {
 		body = stmt;

Modified: trunk/ccode/valaccodeelementaccess.vala
==============================================================================
--- trunk/ccode/valaccodeelementaccess.vala	(original)
+++ trunk/ccode/valaccodeelementaccess.vala	Thu Aug 14 21:22:53 2008
@@ -31,13 +31,13 @@
 	/**
 	 * Expression representing the container on which we want to access.
 	 */
-	public CCodeExpression container { get; set construct; }
+	public CCodeExpression container { get; set; }
 	
 	/**
 	 * Expression representing the index we want to access inside the
 	 * container.
 	 */
-	public CCodeExpression index { get; set construct; }
+	public CCodeExpression index { get; set; }
 	
 	public CCodeElementAccess (CCodeExpression cont, CCodeExpression i) {
 		container = cont;

Modified: trunk/ccode/valaccodeexpressionstatement.vala
==============================================================================
--- trunk/ccode/valaccodeexpressionstatement.vala	(original)
+++ trunk/ccode/valaccodeexpressionstatement.vala	Thu Aug 14 21:22:53 2008
@@ -29,7 +29,7 @@
 	/**
 	 * The expression to evaluate.
 	 */
-	public CCodeExpression expression { get; set construct; }
+	public CCodeExpression expression { get; set; }
 	
 	public CCodeExpressionStatement (CCodeExpression expr) {
 		expression = expr;

Modified: trunk/ccode/valaccodegotostatement.vala
==============================================================================
--- trunk/ccode/valaccodegotostatement.vala	(original)
+++ trunk/ccode/valaccodegotostatement.vala	Thu Aug 14 21:22:53 2008
@@ -29,7 +29,7 @@
 	/**
 	 * The name of the target label.
 	 */
-	public string name { get; set construct; }
+	public string name { get; set; }
 
 	public CCodeGotoStatement (string name) {
 		this.name = name;

Modified: trunk/ccode/valaccodeidentifier.vala
==============================================================================
--- trunk/ccode/valaccodeidentifier.vala	(original)
+++ trunk/ccode/valaccodeidentifier.vala	Thu Aug 14 21:22:53 2008
@@ -29,7 +29,7 @@
 	/**
 	 * The name of this identifier.
 	 */
-	public string name { get; set construct; }
+	public string name { get; set; }
 	
 	public CCodeIdentifier (string _name) {
 		name = _name;

Modified: trunk/ccode/valaccodeifstatement.vala
==============================================================================
--- trunk/ccode/valaccodeifstatement.vala	(original)
+++ trunk/ccode/valaccodeifstatement.vala	Thu Aug 14 21:22:53 2008
@@ -29,17 +29,17 @@
 	/**
 	 * The boolean condition to evaluate.
 	 */
-	public CCodeExpression condition { get; set construct; }
+	public CCodeExpression condition { get; set; }
 	
 	/**
 	 * The statement to be evaluated if the condition holds.
 	 */
-	public CCodeStatement true_statement { get; set construct; }
+	public CCodeStatement true_statement { get; set; }
 	
 	/**
 	 * The optional statement to be evaluated if the condition doesn't hold.
 	 */
-	public CCodeStatement? false_statement { get; set construct; }
+	public CCodeStatement? false_statement { get; set; }
 	
 	public CCodeIfStatement (CCodeExpression cond, CCodeStatement true_stmt, CCodeStatement? false_stmt = null) {
 		condition = cond;

Modified: trunk/ccode/valaccodeincludedirective.vala
==============================================================================
--- trunk/ccode/valaccodeincludedirective.vala	(original)
+++ trunk/ccode/valaccodeincludedirective.vala	Thu Aug 14 21:22:53 2008
@@ -29,7 +29,7 @@
 	/**
 	 * The file to be included.
 	 */
-	public string filename { get; set construct; }
+	public string filename { get; set; }
 	
 	/**
 	 * Specifies whether the specified file should be searched in the local

Modified: trunk/ccode/valaccodelabel.vala
==============================================================================
--- trunk/ccode/valaccodelabel.vala	(original)
+++ trunk/ccode/valaccodelabel.vala	Thu Aug 14 21:22:53 2008
@@ -29,7 +29,7 @@
 	/**
 	 * The name of this label.
 	 */
-	public string name { get; set construct; }
+	public string name { get; set; }
 
 	public CCodeLabel (string name) {
 		this.name = name;

Modified: trunk/ccode/valaccodelinedirective.vala
==============================================================================
--- trunk/ccode/valaccodelinedirective.vala	(original)
+++ trunk/ccode/valaccodelinedirective.vala	Thu Aug 14 21:22:53 2008
@@ -29,7 +29,7 @@
 	/**
 	 * The name of the source file to be presumed.
 	 */
-	public string filename { get; set construct; }
+	public string filename { get; set; }
 	
 	/**
 	 * The line number in the source file to be presumed.

Modified: trunk/ccode/valaccodemacroreplacement.vala
==============================================================================
--- trunk/ccode/valaccodemacroreplacement.vala	(original)
+++ trunk/ccode/valaccodemacroreplacement.vala	Thu Aug 14 21:22:53 2008
@@ -29,7 +29,7 @@
 	/**
 	 * The name of this macro.
 	 */
-	public string name { get; set construct; }
+	public string name { get; set; }
 
 	/**
 	 * The replacement of this macro.

Modified: trunk/ccode/valaccodememberaccess.vala
==============================================================================
--- trunk/ccode/valaccodememberaccess.vala	(original)
+++ trunk/ccode/valaccodememberaccess.vala	Thu Aug 14 21:22:53 2008
@@ -29,12 +29,12 @@
 	/**
 	 * The parent of the member.
 	 */
-	public CCodeExpression inner { get; set construct; }
+	public CCodeExpression inner { get; set; }
 	
 	/**
 	 * The name of the member.
 	 */
-	public string member_name { get; set construct; }
+	public string member_name { get; set; }
 	
 	/**
 	 * Specifies whether the member access happens by pointer dereferencing.

Modified: trunk/ccode/valaccodenode.vala
==============================================================================
--- trunk/ccode/valaccodenode.vala	(original)
+++ trunk/ccode/valaccodenode.vala	Thu Aug 14 21:22:53 2008
@@ -1,6 +1,6 @@
 /* valaccodenode.vala
  *
- * Copyright (C) 2006-2007  JÃrg Billeter
+ * Copyright (C) 2006-2008  JÃrg Billeter
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -25,7 +25,7 @@
 /**
  * Represents a node in the C code tree.
  */
-public abstract class Vala.CCodeNode : Object {
+public abstract class Vala.CCodeNode {
 	/**
 	 * The source file name and line number to be presumed for this code
 	 * node.

Modified: trunk/ccode/valaccodeoncesection.vala
==============================================================================
--- trunk/ccode/valaccodeoncesection.vala	(original)
+++ trunk/ccode/valaccodeoncesection.vala	Thu Aug 14 21:22:53 2008
@@ -29,7 +29,7 @@
 	/**
 	 * The name of the guarding define.
 	 */
-	public string define { get; set construct; }
+	public string define { get; set; }
 	
 	public CCodeOnceSection (string def) {
 		define = def;

Modified: trunk/ccode/valaccodeparenthesizedexpression.vala
==============================================================================
--- trunk/ccode/valaccodeparenthesizedexpression.vala	(original)
+++ trunk/ccode/valaccodeparenthesizedexpression.vala	Thu Aug 14 21:22:53 2008
@@ -29,7 +29,7 @@
 	/**
 	 * The expression in the parenthesis.
 	 */
-	public CCodeExpression inner { get; set construct; }
+	public CCodeExpression inner { get; set; }
 	
 	public CCodeParenthesizedExpression (CCodeExpression expr) {
 		inner = expr;

Modified: trunk/ccode/valaccodeunaryexpression.vala
==============================================================================
--- trunk/ccode/valaccodeunaryexpression.vala	(original)
+++ trunk/ccode/valaccodeunaryexpression.vala	Thu Aug 14 21:22:53 2008
@@ -34,7 +34,7 @@
 	/**
 	 * The operand.
 	 */
-	public CCodeExpression inner { get; set construct; }
+	public CCodeExpression inner { get; set; }
 	
 	public CCodeUnaryExpression (CCodeUnaryOperator op, CCodeExpression expr) {
 		operator = op;

Modified: trunk/ccode/valaccodevariabledeclarator.vala
==============================================================================
--- trunk/ccode/valaccodevariabledeclarator.vala	(original)
+++ trunk/ccode/valaccodevariabledeclarator.vala	Thu Aug 14 21:22:53 2008
@@ -29,7 +29,7 @@
 	/**
 	 * The variable name.
 	 */
-	public string name { get; set construct; }
+	public string name { get; set; }
 	
 	/**
 	 * The optional initializer expression.

Modified: trunk/ccode/valaccodewhilestatement.vala
==============================================================================
--- trunk/ccode/valaccodewhilestatement.vala	(original)
+++ trunk/ccode/valaccodewhilestatement.vala	Thu Aug 14 21:22:53 2008
@@ -29,7 +29,7 @@
 	/**
 	 * The loop condition.
 	 */
-	public CCodeExpression condition { get; set construct; }
+	public CCodeExpression condition { get; set; }
 	
 	/**
 	 * The loop body.

Modified: trunk/ccode/valaccodewriter.vala
==============================================================================
--- trunk/ccode/valaccodewriter.vala	(original)
+++ trunk/ccode/valaccodewriter.vala	Thu Aug 14 21:22:53 2008
@@ -25,18 +25,11 @@
 /**
  * Represents a writer to write C source files.
  */
-public class Vala.CCodeWriter : Object {
+public class Vala.CCodeWriter {
 	/**
 	 * Specifies the file to be written.
 	 */
-	public string filename {
-		get {
-			return _filename;
-		}
-		construct {
-			_filename = value;
-		}
-	}
+	public string filename { get; set; }
 
 	/**
 	 * Specifies whether to emit line directives.
@@ -50,7 +43,6 @@
 		get { return _bol; }
 	}
 
-	private string _filename;
 	private string temp_filename;
 	private bool file_exists;
 
@@ -61,8 +53,8 @@
 	/* at begin of line */
 	private bool _bol = true;
 	
-	public CCodeWriter (string _filename) {
-		filename = _filename;
+	public CCodeWriter (string filename) {
+		this.filename = filename;
 	}
 
 	/**
@@ -72,12 +64,12 @@
 	 *         false otherwise
 	 */
 	public bool open () {
-		file_exists = FileUtils.test (_filename, FileTest.EXISTS);
+		file_exists = FileUtils.test (filename, FileTest.EXISTS);
 		if (file_exists) {
-			temp_filename = "%s.valatmp".printf (_filename);
+			temp_filename = "%s.valatmp".printf (filename);
 			stream = FileStream.open (temp_filename, "w");
 		} else {
-			stream = FileStream.open (_filename, "w");
+			stream = FileStream.open (filename, "w");
 		}
 
 		return (stream != null);
@@ -93,7 +85,7 @@
 			var changed = true;
 
 			try {
-				var old_file = new MappedFile (_filename, false);
+				var old_file = new MappedFile (filename, false);
 				var new_file = new MappedFile (temp_filename, false);
 				var len = old_file.get_length ();
 				if (len == new_file.get_length ()) {
@@ -108,7 +100,7 @@
 			}
 			
 			if (changed) {
-				FileUtils.rename (temp_filename, _filename);
+				FileUtils.rename (temp_filename, filename);
 			} else {
 				FileUtils.unlink (temp_filename);
 			}

Modified: trunk/compiler/valacompiler.vala
==============================================================================
--- trunk/compiler/valacompiler.vala	(original)
+++ trunk/compiler/valacompiler.vala	Thu Aug 14 21:22:53 2008
@@ -23,7 +23,7 @@
 
 using GLib;
 
-class Vala.Compiler : Object {
+class Vala.Compiler {
 	static string basedir;
 	static string directory;
 	static bool version;

Modified: trunk/gee/Makefile.am
==============================================================================
--- trunk/gee/Makefile.am	(original)
+++ trunk/gee/Makefile.am	Thu Aug 14 21:22:53 2008
@@ -14,6 +14,7 @@
 libgee_la_VALASOURCES = \
 	arraylist.vala \
 	collection.vala \
+	collectionobject.vala \
 	hashmap.vala \
 	hashset.vala \
 	iterable.vala \

Modified: trunk/gee/arraylist.vala
==============================================================================
--- trunk/gee/arraylist.vala	(original)
+++ trunk/gee/arraylist.vala	Thu Aug 14 21:22:53 2008
@@ -27,7 +27,7 @@
 /**
  * Arrays of arbitrary elements which grow automatically as elements are added.
  */
-public class Gee.ArrayList<G> : Object, Iterable<G>, Collection<G>, List<G> {
+public class Gee.ArrayList<G> : CollectionObject, Iterable<G>, Collection<G>, List<G> {
 	public int size {
 		get { return _size; }
 	}
@@ -152,7 +152,7 @@
 		_items.resize (value);
 	}
 
-	private class Iterator<G> : Object, Gee.Iterator<G> {
+	private class Iterator<G> : CollectionObject, Gee.Iterator<G> {
 		public ArrayList<G> list {
 			set {
 				_list = value;

Added: trunk/gee/collectionobject.vala
==============================================================================
--- (empty file)
+++ trunk/gee/collectionobject.vala	Thu Aug 14 21:22:53 2008
@@ -0,0 +1,30 @@
+/* collectionobject.vala
+ *
+ * Copyright (C) 2008  JÃrg Billeter
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA
+ *
+ * Author:
+ * 	JÃrg Billeter <j bitron ch>
+ */
+
+using GLib;
+
+/**
+ * Base class for all collections.
+ */
+public class Gee.CollectionObject {
+}
+

Modified: trunk/gee/hashmap.vala
==============================================================================
--- trunk/gee/hashmap.vala	(original)
+++ trunk/gee/hashmap.vala	Thu Aug 14 21:22:53 2008
@@ -27,7 +27,7 @@
 /**
  * Hashtable implementation of the Map interface.
  */
-public class Gee.HashMap<K,V> : Object, Map<K,V> {
+public class Gee.HashMap<K,V> : CollectionObject, Map<K,V> {
 	public int size {
 		get { return _nnodes; }
 	}
@@ -62,9 +62,6 @@
 		this.key_hash_func = key_hash_func;
 		this.key_equal_func = key_equal_func;
 		this.value_equal_func = value_equal_func;
-	}
-
-	construct {
 		_array_size = MIN_SIZE;
 		_nodes = new Node<K,V>[_array_size];
 	}
@@ -182,7 +179,7 @@
 		}
 	}
 
-	private class KeySet<K,V> : Object, Iterable<K>, Collection<K>, Set<K> {
+	private class KeySet<K,V> : CollectionObject, Iterable<K>, Collection<K>, Set<K> {
 		public HashMap<K,V> map {
 			set { _map = value; }
 		}
@@ -222,7 +219,7 @@
 		}
 	}
 
-	private class KeyIterator<K,V> : Object, Iterator<K> {
+	private class KeyIterator<K,V> : CollectionObject, Iterator<K> {
 		public HashMap<K,V> map {
 			set {
 				_map = value;
@@ -259,7 +256,7 @@
 		}
 	}
 
-	private class ValueCollection<K,V> : Object, Iterable<V>, Collection<V> {
+	private class ValueCollection<K,V> : CollectionObject, Iterable<V>, Collection<V> {
 		public HashMap<K,V> map {
 			set { _map = value; }
 		}
@@ -305,7 +302,7 @@
 		}
 	}
 
-	private class ValueIterator<K,V> : Object, Iterator<V> {
+	private class ValueIterator<K,V> : CollectionObject, Iterator<V> {
 		public HashMap<K,V> map {
 			set {
 				_map = value;

Modified: trunk/gee/hashset.vala
==============================================================================
--- trunk/gee/hashset.vala	(original)
+++ trunk/gee/hashset.vala	Thu Aug 14 21:22:53 2008
@@ -27,7 +27,7 @@
 /**
  * Hashtable implementation of the Set interface.
  */
-public class Gee.HashSet<G> : Object, Iterable<G>, Collection<G>, Set<G> {
+public class Gee.HashSet<G> : CollectionObject, Iterable<G>, Collection<G>, Set<G> {
 	public int size {
 		get { return _nnodes; }
 	}
@@ -56,9 +56,6 @@
 	public HashSet (HashFunc hash_func = GLib.direct_hash, EqualFunc equal_func = GLib.direct_equal) {
 		this.hash_func = hash_func;
 		this.equal_func = equal_func;
-	}
-
-	construct {
 		_array_size = MIN_SIZE;
 		_nodes = new Node<G>[_array_size];
 	}
@@ -164,7 +161,7 @@
 		}
 	}
 
-	private class Iterator<G> : Object, Gee.Iterator<G> {
+	private class Iterator<G> : CollectionObject, Gee.Iterator<G> {
 		public HashSet<G> set {
 			set {
 				_set = value;

Modified: trunk/gee/iterable.vala
==============================================================================
--- trunk/gee/iterable.vala	(original)
+++ trunk/gee/iterable.vala	Thu Aug 14 21:22:53 2008
@@ -26,7 +26,7 @@
  * Implemented by classes that support a simple iteration over instances of the
  * collection.
  */
-public interface Gee.Iterable<G> : GLib.Object {
+public interface Gee.Iterable<G> : CollectionObject {
 	public abstract Type get_element_type ();
 
 	/**

Modified: trunk/gee/iterator.vala
==============================================================================
--- trunk/gee/iterator.vala	(original)
+++ trunk/gee/iterator.vala	Thu Aug 14 21:22:53 2008
@@ -24,7 +24,7 @@
  * Implemented by classes that support a simple iteration over instances of the
  * collection.
  */
-public interface Gee.Iterator<G> : GLib.Object {
+public interface Gee.Iterator<G> : CollectionObject {
 	/**
 	 * Advances to the next element in the iteration.
 	 *

Modified: trunk/gee/map.vala
==============================================================================
--- trunk/gee/map.vala	(original)
+++ trunk/gee/map.vala	Thu Aug 14 21:22:53 2008
@@ -23,7 +23,7 @@
 /**
  * A map is a generic collection of key/value pairs.
  */
-public interface Gee.Map<K,V> : GLib.Object {
+public interface Gee.Map<K,V> : CollectionObject {
 	/**
 	 * The number of items in this map.
 	 */

Modified: trunk/gee/readonlycollection.vala
==============================================================================
--- trunk/gee/readonlycollection.vala	(original)
+++ trunk/gee/readonlycollection.vala	Thu Aug 14 21:22:53 2008
@@ -25,7 +25,7 @@
 /**
  * Represents a read-only collection of items.
  */
-public class Gee.ReadOnlyCollection<G> : Object, Iterable<G>, Collection<G> {
+public class Gee.ReadOnlyCollection<G> : CollectionObject, Iterable<G>, Collection<G> {
 	public int size {
 		get { return _collection.size; }
 	}
@@ -72,7 +72,7 @@
 		assert_not_reached ();
 	}
 
-	private class Iterator<G> : Object, Gee.Iterator<G> {
+	private class Iterator<G> : CollectionObject, Gee.Iterator<G> {
 		public bool next () {
 			return false;
 		}

Modified: trunk/gee/readonlylist.vala
==============================================================================
--- trunk/gee/readonlylist.vala	(original)
+++ trunk/gee/readonlylist.vala	Thu Aug 14 21:22:53 2008
@@ -25,7 +25,7 @@
 /**
  * Represents a read-only collection of items in a well-defined order.
  */
-public class Gee.ReadOnlyList<G> : Object, Iterable<G>, Collection<G>, List<G> {
+public class Gee.ReadOnlyList<G> : CollectionObject, Iterable<G>, Collection<G>, List<G> {
 	public int size {
 		get { return _list.size; }
 	}
@@ -100,7 +100,7 @@
 		assert_not_reached ();
 	}
 
-	class Iterator<G> : Object, Gee.Iterator<G> {
+	class Iterator<G> : CollectionObject, Gee.Iterator<G> {
 		public bool next () {
 			return false;
 		}

Modified: trunk/gee/readonlymap.vala
==============================================================================
--- trunk/gee/readonlymap.vala	(original)
+++ trunk/gee/readonlymap.vala	Thu Aug 14 21:22:53 2008
@@ -25,7 +25,7 @@
 /**
  * Represents a read-only collection of key/value pairs.
  */
-public class Gee.ReadOnlyMap<K,V> : Object, Map<K,V> {
+public class Gee.ReadOnlyMap<K,V> : CollectionObject, Map<K,V> {
 	public int size {
 		get { return _map.size; }
 	}

Modified: trunk/gee/readonlyset.vala
==============================================================================
--- trunk/gee/readonlyset.vala	(original)
+++ trunk/gee/readonlyset.vala	Thu Aug 14 21:22:53 2008
@@ -25,7 +25,7 @@
 /**
  * Represents a read-only collection of items without duplicates.
  */
-public class Gee.ReadOnlySet<G> : Object, Iterable<G>, Collection<G>, Set<G> {
+public class Gee.ReadOnlySet<G> : CollectionObject, Iterable<G>, Collection<G>, Set<G> {
 	public int size {
 		get { return _set.size; }
 	}
@@ -72,7 +72,7 @@
 		assert_not_reached ();
 	}
 
-	private class Iterator<G> : Object, Gee.Iterator<G> {
+	private class Iterator<G> : CollectionObject, Gee.Iterator<G> {
 		public bool next () {
 			return false;
 		}

Modified: trunk/gobject/valaccodecompiler.vala
==============================================================================
--- trunk/gobject/valaccodecompiler.vala	(original)
+++ trunk/gobject/valaccodecompiler.vala	Thu Aug 14 21:22:53 2008
@@ -25,7 +25,7 @@
 /**
  * Interface to the C compiler.
  */
-public class Vala.CCodeCompiler : Object {
+public class Vala.CCodeCompiler {
 	public CCodeCompiler () {
 	}
 

Modified: trunk/gobject/valaccodegenerator.vala
==============================================================================
--- trunk/gobject/valaccodegenerator.vala	(original)
+++ trunk/gobject/valaccodegenerator.vala	Thu Aug 14 21:22:53 2008
@@ -136,9 +136,6 @@
 	private Set<string> wrappers;
 
 	public CCodeGenerator () {
-	}
-	
-	construct {
 		predefined_marshal_set = new HashSet<string> (str_hash, str_equal);
 		predefined_marshal_set.add ("VOID:VOID");
 		predefined_marshal_set.add ("VOID:BOOLEAN");

Modified: trunk/gobject/valatyperegisterfunction.vala
==============================================================================
--- trunk/gobject/valatyperegisterfunction.vala	(original)
+++ trunk/gobject/valatyperegisterfunction.vala	Thu Aug 14 21:22:53 2008
@@ -25,7 +25,7 @@
 /**
  * C function to register a type at runtime.
  */
-public abstract class Vala.TypeRegisterFunction : Object {
+public abstract class Vala.TypeRegisterFunction {
 	private CCodeFragment declaration_fragment = new CCodeFragment ();
 
 	private CCodeFragment definition_fragment = new CCodeFragment ();

Modified: trunk/tests/arrays.vala
==============================================================================
--- trunk/tests/arrays.vala	(original)
+++ trunk/tests/arrays.vala	Thu Aug 14 21:22:53 2008
@@ -4,7 +4,7 @@
 	public Foo (construct string bar) {
 	}
 
-	public string bar { get; set construct; }
+	public string bar { get; set; }
 
 	static void test_integer_array () {
 		stdout.printf ("One dimensional array creation and assignment: 1");

Modified: trunk/vala/valaaddressofexpression.vala
==============================================================================
--- trunk/vala/valaaddressofexpression.vala	(original)
+++ trunk/vala/valaaddressofexpression.vala	Thu Aug 14 21:22:53 2008
@@ -33,7 +33,7 @@
 		get {
 			return _inner;
 		}
-		set construct {
+		set {
 			_inner = value;
 			_inner.parent_node = this;
 		}

Modified: trunk/vala/valaarraycreationexpression.vala
==============================================================================
--- trunk/vala/valaarraycreationexpression.vala	(original)
+++ trunk/vala/valaarraycreationexpression.vala	Thu Aug 14 21:22:53 2008
@@ -42,7 +42,7 @@
 	/**
 	 * The rank of the array.
 	 */
-	public int rank { get; set construct; }
+	public int rank { get; set; }
 	
 	/**
 	 * The size for each dimension ascending from left to right.
@@ -52,7 +52,7 @@
 	/**
 	 * The root array initializer list.
 	 */
-	public InitializerList? initializer_list { get; set construct; }
+	public InitializerList? initializer_list { get; set; }
 
 	private DataType _element_type;
 

Modified: trunk/vala/valaarraylengthfield.vala
==============================================================================
--- trunk/vala/valaarraylengthfield.vala	(original)
+++ trunk/vala/valaarraylengthfield.vala	Thu Aug 14 21:22:53 2008
@@ -32,6 +32,7 @@
 	 * @return newly created field
 	 */
 	public ArrayLengthField (SourceReference source_reference) {
+		base.init ();
 		name = "length";
 		external = true;
 		this.source_reference = source_reference;

Modified: trunk/vala/valaarraymovemethod.vala
==============================================================================
--- trunk/vala/valaarraymovemethod.vala	(original)
+++ trunk/vala/valaarraymovemethod.vala	Thu Aug 14 21:22:53 2008
@@ -32,6 +32,7 @@
 	 * @return newly created method
 	 */
 	public ArrayMoveMethod (SourceReference source_reference) {
+		base.init ();
 		name = "move";
 		external = true;
 		this.source_reference = source_reference;

Modified: trunk/vala/valaarrayresizemethod.vala
==============================================================================
--- trunk/vala/valaarrayresizemethod.vala	(original)
+++ trunk/vala/valaarrayresizemethod.vala	Thu Aug 14 21:22:53 2008
@@ -32,12 +32,10 @@
 	 * @return newly created method
 	 */
 	public ArrayResizeMethod (SourceReference source_reference) {
+		base.init ();
 		name = "resize";
 		external = true;
 		this.source_reference = source_reference;
-	}
-
-	construct {
 		cinstance_parameter_position = 0.1;
 	}
 }

Modified: trunk/vala/valaassignment.vala
==============================================================================
--- trunk/vala/valaassignment.vala	(original)
+++ trunk/vala/valaassignment.vala	Thu Aug 14 21:22:53 2008
@@ -33,7 +33,7 @@
 	 */
 	public Expression left {
 		get { return _left; }
-		set construct {
+		set {
 			_left = value;
 			_left.parent_node = this;
 		}
@@ -49,7 +49,7 @@
 	 */
 	public Expression right {
 		get { return _right; }
-		set construct {
+		set {
 			_right = value;
 			_right.parent_node = this;
 		}

Modified: trunk/vala/valabasicblock.vala
==============================================================================
--- trunk/vala/valabasicblock.vala	(original)
+++ trunk/vala/valabasicblock.vala	Thu Aug 14 21:22:53 2008
@@ -27,7 +27,7 @@
  * Represents a basic block, i.e. a straight-line piece of code without any
  * jumps or jump targets.
  */
-public class Vala.BasicBlock : Object {
+public class Vala.BasicBlock {
 	private Gee.List<CodeNode> nodes = new ArrayList<CodeNode> ();
 
 	private Gee.List<weak BasicBlock> predecessors = new ArrayList<weak BasicBlock> ();

Modified: trunk/vala/valabinaryexpression.vala
==============================================================================
--- trunk/vala/valabinaryexpression.vala	(original)
+++ trunk/vala/valabinaryexpression.vala	Thu Aug 14 21:22:53 2008
@@ -40,7 +40,7 @@
 		get {
 			return _left;
 		}
-		set construct {
+		set {
 			_left = value;
 			_left.parent_node = this;
 		}
@@ -53,7 +53,7 @@
 		get {
 			return _right;
 		}
-		set construct {
+		set {
 			_right = value;
 			_right.parent_node = this;
 		}

Modified: trunk/vala/valablock.vala
==============================================================================
--- trunk/vala/valablock.vala	(original)
+++ trunk/vala/valablock.vala	Thu Aug 14 21:22:53 2008
@@ -42,6 +42,7 @@
 	 * @param source reference to source code
 	 */
 	public Block (SourceReference source_reference) {
+		base.init ();
 		this.source_reference = source_reference;
 	}
 	

Modified: trunk/vala/valacastexpression.vala
==============================================================================
--- trunk/vala/valacastexpression.vala	(original)
+++ trunk/vala/valacastexpression.vala	Thu Aug 14 21:22:53 2008
@@ -33,7 +33,7 @@
 		get {
 			return _inner;
 		}
-		set construct {
+		set {
 			_inner = value;
 			_inner.parent_node = this;
 		}
@@ -53,7 +53,7 @@
 	/**
 	 * Checked casts return NULL instead of raising an error.
 	 */
-	public bool is_silent_cast { get; set construct; }
+	public bool is_silent_cast { get; set; }
 
 	private Expression _inner;
 

Modified: trunk/vala/valacfgbuilder.vala
==============================================================================
--- trunk/vala/valacfgbuilder.vala	(original)
+++ trunk/vala/valacfgbuilder.vala	Thu Aug 14 21:22:53 2008
@@ -27,7 +27,7 @@
  * Code visitor building the control flow graph.
  */
 public class Vala.CFGBuilder : CodeVisitor {
-	private class JumpTarget : Object {
+	private class JumpTarget {
 		public bool break_target { get; set; }
 		public bool continue_target { get; set; }
 		public bool return_target { get; set; }

Modified: trunk/vala/valacharacterliteral.vala
==============================================================================
--- trunk/vala/valacharacterliteral.vala	(original)
+++ trunk/vala/valacharacterliteral.vala	Thu Aug 14 21:22:53 2008
@@ -34,7 +34,7 @@
 		get {
 			return _value;
 		}
-		set construct {
+		set {
 			_value = value;
 			
 			if (!value.validate () || (value.len () != 3 && value.next_char ().get_char () != '\\')) {

Modified: trunk/vala/valaclass.vala
==============================================================================
--- trunk/vala/valaclass.vala	(original)
+++ trunk/vala/valaclass.vala	Thu Aug 14 21:22:53 2008
@@ -172,6 +172,7 @@
 	 * @return       newly created class
 	 */
 	public Class (string name, SourceReference? source_reference = null) {
+		base.init ();
 		this.source_reference = source_reference;
 		this.name = name;
 	}

Modified: trunk/vala/valacodebinding.vala
==============================================================================
--- trunk/vala/valacodebinding.vala	(original)
+++ trunk/vala/valacodebinding.vala	Thu Aug 14 21:22:53 2008
@@ -25,5 +25,5 @@
 /**
  * The link between a source code node and generated code.
  */
-public abstract class Vala.CodeBinding : Object {
+public abstract class Vala.CodeBinding {
 }

Modified: trunk/vala/valacodecontext.vala
==============================================================================
--- trunk/vala/valacodecontext.vala	(original)
+++ trunk/vala/valacodecontext.vala	Thu Aug 14 21:22:53 2008
@@ -26,7 +26,7 @@
 /**
  * The root of the code tree.
  */
-public class Vala.CodeContext : Object {
+public class Vala.CodeContext {
 	/**
 	 * Specifies the name of the library to be built.
 	 *
@@ -158,15 +158,11 @@
 	/**
 	 * The selected code generator.
 	 */
-	public CodeGenerator codegen { get; set; }
+	public CodeGenerator codegen { get; set; default = new CodeGenerator (); }
 
 	public CodeContext () {
 	}
 
-	construct {
-		codegen = new CodeGenerator ();
-	}
-
 	/**
 	 * Returns a copy of the list of source files.
 	 *

Modified: trunk/vala/valacodenode.vala
==============================================================================
--- trunk/vala/valacodenode.vala	(original)
+++ trunk/vala/valacodenode.vala	Thu Aug 14 21:22:53 2008
@@ -29,7 +29,7 @@
  * Code nodes get created by the parser and are used throughout the whole
  * compilation process.
  */
-public abstract class Vala.CodeNode : Object {
+public abstract class Vala.CodeNode {
 	/**
 	 * Parent of this code node.
 	 */
@@ -164,7 +164,7 @@
 	public virtual string to_string () {
 		var str = new StringBuilder ();
 
-		str.append ("/* ").append (get_type ().name ());
+		str.append ("/* ");
 
 		if (source_reference != null) {
 			str.append ("@").append (source_reference.to_string ());

Modified: trunk/vala/valacodevisitor.vala
==============================================================================
--- trunk/vala/valacodevisitor.vala	(original)
+++ trunk/vala/valacodevisitor.vala	Thu Aug 14 21:22:53 2008
@@ -26,7 +26,7 @@
 /**
  * Abstract code node visitor for traversing source code tree.
  */
-public abstract class Vala.CodeVisitor : Object {
+public abstract class Vala.CodeVisitor {
 	/**
 	 * Visit operation called for source files.
 	 *

Modified: trunk/vala/valaconditionalexpression.vala
==============================================================================
--- trunk/vala/valaconditionalexpression.vala	(original)
+++ trunk/vala/valaconditionalexpression.vala	Thu Aug 14 21:22:53 2008
@@ -29,17 +29,17 @@
 	/**
 	 * The condition.
 	 */
-	public Expression condition { get; set construct; }
+	public Expression condition { get; set; }
 	
 	/**
 	 * The expression to be evaluated if the condition holds.
 	 */
-	public Expression true_expression { get; set construct; }
+	public Expression true_expression { get; set; }
 
 	/**
 	 * The expression to be evaluated if the condition doesn't hold.
 	 */
-	public Expression false_expression { get; set construct; }
+	public Expression false_expression { get; set; }
 	
 	/**
 	 * Creates a new conditional expression.

Modified: trunk/vala/valaconstant.vala
==============================================================================
--- trunk/vala/valaconstant.vala	(original)
+++ trunk/vala/valaconstant.vala	Thu Aug 14 21:22:53 2008
@@ -68,6 +68,7 @@
 	 * @return                 newly created constant
 	 */
 	public Constant (string name, DataType type_reference, Expression? initializer, SourceReference? source_reference) {
+		base.init ();
 		this.name = name;
 		this.type_reference = type_reference;
 		this.initializer = initializer;

Modified: trunk/vala/valaconstructor.vala
==============================================================================
--- trunk/vala/valaconstructor.vala	(original)
+++ trunk/vala/valaconstructor.vala	Thu Aug 14 21:22:53 2008
@@ -48,6 +48,7 @@
 	 * @return       newly created constructor
 	 */
 	public Constructor (SourceReference source) {
+		base.init ();
 		source_reference = source;
 	}
 

Modified: trunk/vala/valacreationmethod.vala
==============================================================================
--- trunk/vala/valacreationmethod.vala	(original)
+++ trunk/vala/valacreationmethod.vala	Thu Aug 14 21:22:53 2008
@@ -53,6 +53,7 @@
 	 * @return                 newly created method
 	 */
 	public CreationMethod (string? type_name, string? name, SourceReference? source_reference = null) {
+		base.init ();
 		this.name = name;
 		this.source_reference = source_reference;
 		this.type_name = type_name;

Modified: trunk/vala/valadeclarationstatement.vala
==============================================================================
--- trunk/vala/valadeclarationstatement.vala	(original)
+++ trunk/vala/valadeclarationstatement.vala	Thu Aug 14 21:22:53 2008
@@ -29,7 +29,7 @@
 	/**
 	 * The local variable or constant declaration.
 	 */
-	public Symbol declaration { get; set construct; }
+	public Symbol declaration { get; set; }
 
 	/**
 	 * Creates a new declaration statement.

Modified: trunk/vala/valadelegate.vala
==============================================================================
--- trunk/vala/valadelegate.vala	(original)
+++ trunk/vala/valadelegate.vala	Thu Aug 14 21:22:53 2008
@@ -95,12 +95,11 @@
 	 * @return            newly created delegate
 	 */
 	public Delegate (string? name, DataType return_type, SourceReference? source_reference = null) {
+		base.init ();
 		this.name = name;
 		this.return_type = return_type;
 		this.source_reference = source_reference;
-	}
 
-	construct {
 		cinstance_parameter_position = -1;
 		carray_length_parameter_position = -3;
 		cdelegate_target_parameter_position = -3;

Modified: trunk/vala/valadestructor.vala
==============================================================================
--- trunk/vala/valadestructor.vala	(original)
+++ trunk/vala/valadestructor.vala	Thu Aug 14 21:22:53 2008
@@ -48,6 +48,7 @@
 	 * @return                 newly created destructor
 	 */
 	public Destructor (SourceReference? source_reference = null) {
+		base.init ();
 		this.source_reference = source_reference;
 	}
 

Modified: trunk/vala/valadostatement.vala
==============================================================================
--- trunk/vala/valadostatement.vala	(original)
+++ trunk/vala/valadostatement.vala	Thu Aug 14 21:22:53 2008
@@ -46,7 +46,7 @@
 		get {
 			return _condition;
 		}
-		set construct {
+		set {
 			_condition = value;
 			_condition.parent_node = this;
 		}

Modified: trunk/vala/valadynamicmethod.vala
==============================================================================
--- trunk/vala/valadynamicmethod.vala	(original)
+++ trunk/vala/valadynamicmethod.vala	Thu Aug 14 21:22:53 2008
@@ -35,6 +35,7 @@
 	static int dynamic_method_id;
 
 	public DynamicMethod (DataType dynamic_type, string name, DataType return_type, SourceReference? source_reference = null) {
+		base.init ();
 		this.dynamic_type = dynamic_type;
 		this.name = name;
 		this.return_type = return_type;

Modified: trunk/vala/valadynamicproperty.vala
==============================================================================
--- trunk/vala/valadynamicproperty.vala	(original)
+++ trunk/vala/valadynamicproperty.vala	Thu Aug 14 21:22:53 2008
@@ -32,6 +32,7 @@
 	private string cname;
 
 	public DynamicProperty (DataType dynamic_type, string name, SourceReference? source_reference = null) {
+		base.init ();
 		this.dynamic_type = dynamic_type;
 		this.name = name;
 		this.source_reference = source_reference;

Modified: trunk/vala/valadynamicsignal.vala
==============================================================================
--- trunk/vala/valadynamicsignal.vala	(original)
+++ trunk/vala/valadynamicsignal.vala	Thu Aug 14 21:22:53 2008
@@ -31,6 +31,7 @@
 	public Expression handler { get; set; }
 
 	public DynamicSignal (DataType dynamic_type, string name, DataType return_type, SourceReference? source_reference = null) {
+		base.init ();
 		this.dynamic_type = dynamic_type;
 		this.name = name;
 		this.return_type = return_type;

Modified: trunk/vala/valaenum.vala
==============================================================================
--- trunk/vala/valaenum.vala	(original)
+++ trunk/vala/valaenum.vala	Thu Aug 14 21:22:53 2008
@@ -53,6 +53,7 @@
 	 * @return                 newly created enum
 	 */
 	public Enum (string name, SourceReference? source_reference = null) {
+		base.init ();
 		this.source_reference = source_reference;
 		this.name = name;
 	}

Modified: trunk/vala/valaenumvalue.vala
==============================================================================
--- trunk/vala/valaenumvalue.vala	(original)
+++ trunk/vala/valaenumvalue.vala	Thu Aug 14 21:22:53 2008
@@ -40,6 +40,7 @@
 	 * @return     newly created enum value
 	 */
 	public EnumValue (string name, SourceReference? source_reference = null) {
+		base.init ();
 		this.name = name;
 		this.source_reference = source_reference;
 	}
@@ -52,6 +53,7 @@
 	 * @return      newly created enum value
 	 */
 	public EnumValue.with_value (string name, Expression value, SourceReference? source_reference = null) {
+		base.init ();
 		this.name = name;
 		this.value = value;
 		this.source_reference = source_reference;

Modified: trunk/vala/valaerrorcode.vala
==============================================================================
--- trunk/vala/valaerrorcode.vala	(original)
+++ trunk/vala/valaerrorcode.vala	Thu Aug 14 21:22:53 2008
@@ -40,6 +40,7 @@
 	 * @return     newly created enum value
 	 */
 	public ErrorCode (string name, SourceReference? source_reference = null) {
+		base.init ();
 		this.name = name;
 		this.source_reference = source_reference;
 	}
@@ -52,6 +53,7 @@
 	 * @return      newly created enum value
 	 */
 	public ErrorCode.with_value (string name, Expression value, SourceReference? source_reference = null) {
+		base.init ();
 		this.name = name;
 		this.value = value;
 		this.source_reference = source_reference;

Modified: trunk/vala/valaerrordomain.vala
==============================================================================
--- trunk/vala/valaerrordomain.vala	(original)
+++ trunk/vala/valaerrordomain.vala	Thu Aug 14 21:22:53 2008
@@ -42,6 +42,7 @@
 	 * @return                 newly created error domain
 	 */
 	public ErrorDomain (string name, SourceReference? source_reference = null) {
+		base.init ();
 		this.source_reference = source_reference;
 		this.name = name;
 	}

Modified: trunk/vala/valaexpressionstatement.vala
==============================================================================
--- trunk/vala/valaexpressionstatement.vala	(original)
+++ trunk/vala/valaexpressionstatement.vala	Thu Aug 14 21:22:53 2008
@@ -34,7 +34,7 @@
 		get {
 			return _expression;
 		}
-		set construct {
+		set {
 			_expression = value;
 			_expression.parent_node = this;
 		}

Modified: trunk/vala/valafield.vala
==============================================================================
--- trunk/vala/valafield.vala	(original)
+++ trunk/vala/valafield.vala	Thu Aug 14 21:22:53 2008
@@ -87,6 +87,7 @@
 	 * @return       newly created field
 	 */
 	public Field (string name, DataType field_type, Expression? initializer, SourceReference? source_reference = null) {
+		base.init ();
 		this.name = name;
 		this.field_type = field_type;
 		this.initializer = initializer;

Modified: trunk/vala/valaforeachstatement.vala
==============================================================================
--- trunk/vala/valaforeachstatement.vala	(original)
+++ trunk/vala/valaforeachstatement.vala	Thu Aug 14 21:22:53 2008
@@ -43,7 +43,7 @@
 	/**
 	 * Specifies the element variable name.
 	 */
-	public string variable_name { get; set construct; }
+	public string variable_name { get; set; }
 	
 	/**
 	 * Specifies the container.
@@ -52,7 +52,7 @@
 		get {
 			return _collection;
 		}
-		set construct {
+		set {
 			_collection = value;
 			_collection.parent_node = this;
 		}
@@ -101,6 +101,7 @@
 	 * @return       newly created foreach statement
 	 */
 	public ForeachStatement (DataType? type_reference, string variable_name, Expression collection, Block body, SourceReference source_reference) {
+		base.init ();
 		this.variable_name = variable_name;
 		this.collection = collection;
 		this.body = body;

Modified: trunk/vala/valaformalparameter.vala
==============================================================================
--- trunk/vala/valaformalparameter.vala	(original)
+++ trunk/vala/valaformalparameter.vala	Thu Aug 14 21:22:53 2008
@@ -98,9 +98,12 @@
 	 * @return       newly created formal parameter
 	 */
 	public FormalParameter (string name, DataType parameter_type, SourceReference? source_reference = null) {
+		base.init ();
 		this.name = name;
 		this.parameter_type = parameter_type;
 		this.source_reference = source_reference;
+
+		access = SymbolAccessibility.PUBLIC;
 	}
 	
 	/**
@@ -108,11 +111,10 @@
 	 * parameters.
 	 */
 	public FormalParameter.with_ellipsis (SourceReference? source = null) {
+		base.init ();
 		ellipsis = true;
 		source_reference = source;
-	}
 
-	construct {
 		access = SymbolAccessibility.PUBLIC;
 	}
 

Modified: trunk/vala/valaforstatement.vala
==============================================================================
--- trunk/vala/valaforstatement.vala	(original)
+++ trunk/vala/valaforstatement.vala	Thu Aug 14 21:22:53 2008
@@ -34,7 +34,7 @@
 		get {
 			return _condition;
 		}
-		set construct {
+		set {
 			_condition = value;
 			if (_condition != null) {
 				_condition.parent_node = this;

Modified: trunk/vala/valagenieparser.vala
==============================================================================
--- trunk/vala/valagenieparser.vala	(original)
+++ trunk/vala/valagenieparser.vala	Thu Aug 14 21:22:53 2008
@@ -67,7 +67,7 @@
 		PRIVATE = 1 << 7
 	}
 
-	construct {
+	public Parser () {
 		tokens = new TokenInfo[BUFFER_SIZE];
 		class_name = null;
 		current_expr_is_lambda = false;

Modified: trunk/vala/valageniescanner.vala
==============================================================================
--- trunk/vala/valageniescanner.vala	(original)
+++ trunk/vala/valageniescanner.vala	Thu Aug 14 21:22:53 2008
@@ -27,10 +27,10 @@
 /**
  * Lexical scanner for Genie source files.
  */
-public class Vala.Genie.Scanner : Object {
-	public SourceFile source_file { get; construct; }
+public class Vala.Genie.Scanner {
+	public SourceFile source_file { get; private set; }
 
-	public int indent_spaces { get;set;}
+	public int indent_spaces { get; set;}
 
 	char* begin;
 	char* current;
@@ -48,13 +48,9 @@
 
 	string _comment;
 	
-	
-
 	public Scanner (SourceFile source_file) {
 		this.source_file = source_file;
-	}
 
-	construct {
 		begin = source_file.get_mapped_contents ();
 		end = begin + source_file.get_mapped_length ();
 

Modified: trunk/vala/valaifstatement.vala
==============================================================================
--- trunk/vala/valaifstatement.vala	(original)
+++ trunk/vala/valaifstatement.vala	Thu Aug 14 21:22:53 2008
@@ -33,7 +33,7 @@
 		get {
 			return _condition;
 		}
-		set construct {
+		set {
 			_condition = value;
 			_condition.parent_node = this;
 		}
@@ -42,12 +42,12 @@
 	/**
 	 * The statement to be evaluated if the condition holds.
 	 */
-	public Block true_statement { get; set construct; }
+	public Block true_statement { get; set; }
 	
 	/**
 	 * The optional statement to be evaluated if the condition doesn't hold.
 	 */
-	public Block? false_statement { get; set construct; }
+	public Block? false_statement { get; set; }
 
 	private Expression _condition;
 

Modified: trunk/vala/valainstancecast.vala
==============================================================================
--- trunk/vala/valainstancecast.vala	(original)
+++ trunk/vala/valainstancecast.vala	Thu Aug 14 21:22:53 2008
@@ -29,12 +29,12 @@
 	/**
 	 * The target type.
 	 */
-	public weak TypeSymbol type_reference { get; set construct; }
+	public weak TypeSymbol type_reference { get; set; }
 	
 	/**
 	 * The expression to be cast.
 	 */
-	public CCodeExpression inner { get; set construct; }
+	public CCodeExpression inner { get; set; }
 	
 	/**
 	 * Creates a new instance cast expression.
@@ -46,9 +46,7 @@
 	public InstanceCast (CCodeExpression expr, TypeSymbol type) {
 		inner = expr;
 		type_reference = type;
-	}
-	
-	construct {
+
 		call = new CCodeIdentifier (type_reference.get_upper_case_cname (null));
 		add_argument ((CCodeExpression) inner);
 	}

Modified: trunk/vala/valainterface.vala
==============================================================================
--- trunk/vala/valainterface.vala	(original)
+++ trunk/vala/valainterface.vala	Thu Aug 14 21:22:53 2008
@@ -61,6 +61,7 @@
 	 * @return       newly created interface
 	 */
 	public Interface (string name, SourceReference? source_reference = null) {
+		base.init ();
 		this.source_reference = source_reference;
 		this.name = name;
 	}

Modified: trunk/vala/valainvocationexpression.vala
==============================================================================
--- trunk/vala/valainvocationexpression.vala	(original)
+++ trunk/vala/valainvocationexpression.vala	Thu Aug 14 21:22:53 2008
@@ -32,7 +32,7 @@
 	 */
 	public Expression call {
 		get { return _call; }
-		set construct {
+		set {
 			_call = value;
 			_call.parent_node = this;
 		}

Modified: trunk/vala/valalocalvariable.vala
==============================================================================
--- trunk/vala/valalocalvariable.vala	(original)
+++ trunk/vala/valalocalvariable.vala	Thu Aug 14 21:22:53 2008
@@ -66,6 +66,7 @@
 	 * @return       newly created variable declarator
 	 */
 	public LocalVariable (DataType? variable_type, string name, Expression? initializer = null, SourceReference? source_reference = null) {
+		base.init ();
 		this.variable_type = variable_type;
 		this.name = name;
 		this.initializer = initializer;

Modified: trunk/vala/valalockable.vala
==============================================================================
--- trunk/vala/valalockable.vala	(original)
+++ trunk/vala/valalockable.vala	Thu Aug 14 21:22:53 2008
@@ -26,7 +26,7 @@
 /**
  * Represents a lockable object.
  */
-public interface Vala.Lockable : Object {
+public interface Vala.Lockable {
 	/**
 	 * Indicates a specific lockable object beeing actually locked somewhere.
 	 */

Modified: trunk/vala/valalockstatement.vala
==============================================================================
--- trunk/vala/valalockstatement.vala	(original)
+++ trunk/vala/valalockstatement.vala	Thu Aug 14 21:22:53 2008
@@ -29,12 +29,12 @@
 	/**
 	 * Expression representing the resource to be locked.
 	 */
-	public Expression resource { get; set construct; }
+	public Expression resource { get; set; }
 	
 	/**
 	 * The statement during its execution the resource is locked.
 	 */
-	public Block body { get; set construct; }
+	public Block body { get; set; }
 	
 	public LockStatement (Expression resource, Block body, SourceReference? source_reference = null) {
 		this.body = body;

Modified: trunk/vala/valamember.vala
==============================================================================
--- trunk/vala/valamember.vala	(original)
+++ trunk/vala/valamember.vala	Thu Aug 14 21:22:53 2008
@@ -26,7 +26,7 @@
 /**
  * Represents a general class member.
  */
-public class Vala.Member : Symbol {
+public abstract class Vala.Member : Symbol {
 	private Gee.List<string> cheader_filenames = new ArrayList<string> ();
 	
 	public override void accept (CodeVisitor visitor) {

Modified: trunk/vala/valamethod.vala
==============================================================================
--- trunk/vala/valamethod.vala	(original)
+++ trunk/vala/valamethod.vala	Thu Aug 14 21:22:53 2008
@@ -217,12 +217,11 @@
 	 * @return            newly created method
 	 */
 	public Method (string name, DataType return_type, SourceReference? source_reference = null) {
+		base.init ();
 		this.return_type = return_type;
 		this.source_reference = source_reference;
 		this.name = name;
-	}
 
-	construct {
 		carray_length_parameter_position = -3;
 		cdelegate_target_parameter_position = -3;
 	}

Modified: trunk/vala/valanamedargument.vala
==============================================================================
--- trunk/vala/valanamedargument.vala	(original)
+++ trunk/vala/valanamedargument.vala	Thu Aug 14 21:22:53 2008
@@ -30,12 +30,12 @@
 	/**
 	 * The name of a property.
 	 */
-	public string name { get; set construct; }
+	public string name { get; set; }
 	
 	/**
 	 * The expression the property should assign.
 	 */
-	public Expression argument { get; set construct; }
+	public Expression argument { get; set; }
 	
 	/**
 	 * Creates a new named argument.

Modified: trunk/vala/valanamespace.vala
==============================================================================
--- trunk/vala/valanamespace.vala	(original)
+++ trunk/vala/valanamespace.vala	Thu Aug 14 21:22:53 2008
@@ -52,6 +52,7 @@
 	 * @return                 newly created namespace
 	 */
 	public Namespace (string? name, SourceReference? source_reference = null) {
+		base.init ();
 		this.source_reference = source_reference;
 		this.name = name;
 		access = SymbolAccessibility.PUBLIC;

Modified: trunk/vala/valaparenthesizedexpression.vala
==============================================================================
--- trunk/vala/valaparenthesizedexpression.vala	(original)
+++ trunk/vala/valaparenthesizedexpression.vala	Thu Aug 14 21:22:53 2008
@@ -33,7 +33,7 @@
 		get {
 			return _inner;
 		}
-		set construct {
+		set {
 			_inner = value;
 			_inner.parent_node = this;
 		}

Modified: trunk/vala/valaparser.vala
==============================================================================
--- trunk/vala/valaparser.vala	(original)
+++ trunk/vala/valaparser.vala	Thu Aug 14 21:22:53 2008
@@ -59,7 +59,7 @@
 		VIRTUAL = 1 << 6
 	}
 
-	construct {
+	public Parser () {
 		tokens = new TokenInfo[BUFFER_SIZE];
 	}
 

Modified: trunk/vala/valapointerindirection.vala
==============================================================================
--- trunk/vala/valapointerindirection.vala	(original)
+++ trunk/vala/valapointerindirection.vala	Thu Aug 14 21:22:53 2008
@@ -33,7 +33,7 @@
 		get {
 			return _inner;
 		}
-		set construct {
+		set {
 			_inner = value;
 			_inner.parent_node = this;
 		}

Modified: trunk/vala/valapostfixexpression.vala
==============================================================================
--- trunk/vala/valapostfixexpression.vala	(original)
+++ trunk/vala/valapostfixexpression.vala	Thu Aug 14 21:22:53 2008
@@ -29,7 +29,7 @@
 	/**
 	 * The operand, must be a variable or a property.
 	 */
-	public Expression inner { get; set construct; }
+	public Expression inner { get; set; }
 	
 	/**
 	 * Specifies whether value should be incremented or decremented.

Modified: trunk/vala/valaproperty.vala
==============================================================================
--- trunk/vala/valaproperty.vala	(original)
+++ trunk/vala/valaproperty.vala	Thu Aug 14 21:22:53 2008
@@ -176,6 +176,7 @@
 	 * @return             newly created property
 	 */
 	public Property (string name, DataType property_type, PropertyAccessor? get_accessor, PropertyAccessor? set_accessor, SourceReference? source_reference = null) {
+		base.init ();
 		this.name = name;
 		this.property_type = property_type;
 		this.get_accessor = get_accessor;

Modified: trunk/vala/valareferencetransferexpression.vala
==============================================================================
--- trunk/vala/valareferencetransferexpression.vala	(original)
+++ trunk/vala/valareferencetransferexpression.vala	Thu Aug 14 21:22:53 2008
@@ -33,7 +33,7 @@
 		get {
 			return _inner;
 		}
-		set construct {
+		set {
 			_inner = value;
 			_inner.parent_node = this;
 		}

Modified: trunk/vala/valascanner.vala
==============================================================================
--- trunk/vala/valascanner.vala	(original)
+++ trunk/vala/valascanner.vala	Thu Aug 14 21:22:53 2008
@@ -26,8 +26,8 @@
 /**
  * Lexical scanner for Vala source files.
  */
-public class Vala.Scanner : Object {
-	public SourceFile source_file { get; construct; }
+public class Vala.Scanner {
+	public SourceFile source_file { get; private set; }
 
 	char* current;
 	char* end;
@@ -39,9 +39,7 @@
 
 	public Scanner (SourceFile source_file) {
 		this.source_file = source_file;
-	}
-	
-	construct {
+
 		char* begin = source_file.get_mapped_contents ();
 		end = begin + source_file.get_mapped_length ();
 

Modified: trunk/vala/valascope.vala
==============================================================================
--- trunk/vala/valascope.vala	(original)
+++ trunk/vala/valascope.vala	Thu Aug 14 21:22:53 2008
@@ -26,7 +26,7 @@
 /**
  * Represents a part of the symbol tree.
  */
-public class Vala.Scope : Object {
+public class Vala.Scope {
 	/**
 	 * The symbol that owns this scope.
 	 */

Modified: trunk/vala/valasignal.vala
==============================================================================
--- trunk/vala/valasignal.vala	(original)
+++ trunk/vala/valasignal.vala	Thu Aug 14 21:22:53 2008
@@ -66,6 +66,7 @@
 	 * @return            newly created signal
 	 */
 	public Signal (string name, DataType return_type, SourceReference? source_reference = null) {
+		base.init ();
 		this.name = name;
 		this.return_type = return_type;
 		this.source_reference = source_reference;

Modified: trunk/vala/valasourcefile.vala
==============================================================================
--- trunk/vala/valasourcefile.vala	(original)
+++ trunk/vala/valasourcefile.vala	Thu Aug 14 21:22:53 2008
@@ -26,7 +26,7 @@
 /**
  * Represents a Vala source or VAPI package file.
  */
-public class Vala.SourceFile : Object {
+public class Vala.SourceFile {
 	/**
 	 * The name of this source file.
 	 */

Modified: trunk/vala/valasourcefilecycle.vala
==============================================================================
--- trunk/vala/valasourcefilecycle.vala	(original)
+++ trunk/vala/valasourcefilecycle.vala	Thu Aug 14 21:22:53 2008
@@ -1,6 +1,6 @@
 /* valasourcefilecycle.vala
  *
- * Copyright (C) 2006-2007  JÃrg Billeter
+ * Copyright (C) 2006-2008  JÃrg Billeter
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -26,7 +26,7 @@
 /**
  * Represents a dependency cycle of source files.
  */
-public class Vala.SourceFileCycle : Object {
+public class Vala.SourceFileCycle {
 	/**
 	 * The members of this source file cycle.
 	 */

Modified: trunk/vala/valasourcereference.vala
==============================================================================
--- trunk/vala/valasourcereference.vala	(original)
+++ trunk/vala/valasourcereference.vala	Thu Aug 14 21:22:53 2008
@@ -25,7 +25,7 @@
 /**
  * Represents a reference to a location in a source file.
  */
-public class Vala.SourceReference : Object {
+public class Vala.SourceReference {
 	/**
 	 * The source file to be referenced.
 	 */

Modified: trunk/vala/valastruct.vala
==============================================================================
--- trunk/vala/valastruct.vala	(original)
+++ trunk/vala/valastruct.vala	Thu Aug 14 21:22:53 2008
@@ -64,6 +64,7 @@
 	 * @return                 newly created struct
 	 */
 	public Struct (string name, SourceReference? source_reference = null) {
+		base.init ();
 		this.source_reference = source_reference;
 		this.name = name;
 	}

Modified: trunk/vala/valaswitchsection.vala
==============================================================================
--- trunk/vala/valaswitchsection.vala	(original)
+++ trunk/vala/valaswitchsection.vala	Thu Aug 14 21:22:53 2008
@@ -36,6 +36,7 @@
 	 * @return                 newly created switch section
 	 */
 	public SwitchSection (SourceReference source_reference) {
+		base.init ();
 		this.source_reference = source_reference;
 	}
 	

Modified: trunk/vala/valaswitchstatement.vala
==============================================================================
--- trunk/vala/valaswitchstatement.vala	(original)
+++ trunk/vala/valaswitchstatement.vala	Thu Aug 14 21:22:53 2008
@@ -34,7 +34,7 @@
 		get {
 			return _expression;
 		}
-		set construct {
+		set {
 			_expression = value;
 			_expression.parent_node = this;
 		}

Modified: trunk/vala/valasymbol.vala
==============================================================================
--- trunk/vala/valasymbol.vala	(original)
+++ trunk/vala/valasymbol.vala	Thu Aug 14 21:22:53 2008
@@ -66,7 +66,7 @@
 	 * of the block to determine which variables need to be freed before
 	 * jump statements.
 	 */
-	public bool active { get; set; }
+	public bool active { get; set; default = true; }
 
 	/**
 	 * Specifies the accessibility of this symbol. Public accessibility
@@ -118,9 +118,8 @@
 	private weak Scope _owner;
 	private Scope _scope;
 
-	construct {
+	public void init () {
 		_scope = new Scope (this);
-		active = true;
 	}
 	
 	/**

Modified: trunk/vala/valatypecheck.vala
==============================================================================
--- trunk/vala/valatypecheck.vala	(original)
+++ trunk/vala/valatypecheck.vala	Thu Aug 14 21:22:53 2008
@@ -29,7 +29,7 @@
 	/**
 	 * The expression to be checked.
 	 */
-	public Expression expression { get; set construct; }
+	public Expression expression { get; set; }
 	
 	/**
 	 * The type to be matched against.

Modified: trunk/vala/valatypeparameter.vala
==============================================================================
--- trunk/vala/valatypeparameter.vala	(original)
+++ trunk/vala/valatypeparameter.vala	Thu Aug 14 21:22:53 2008
@@ -43,6 +43,7 @@
 	 * @return       newly created generic type parameter
 	 */	
 	public TypeParameter (string _name, SourceReference source) {
+		base.init ();
 		name = _name;
 		source_reference = source;
 	}

Modified: trunk/vala/valaunaryexpression.vala
==============================================================================
--- trunk/vala/valaunaryexpression.vala	(original)
+++ trunk/vala/valaunaryexpression.vala	Thu Aug 14 21:22:53 2008
@@ -40,7 +40,7 @@
 		get {
 			return _inner;
 		}
-		set construct {
+		set {
 			_inner = value;
 			_inner.parent_node = this;
 		}

Modified: trunk/vala/valawhilestatement.vala
==============================================================================
--- trunk/vala/valawhilestatement.vala	(original)
+++ trunk/vala/valawhilestatement.vala	Thu Aug 14 21:22:53 2008
@@ -33,7 +33,7 @@
 		get {
 			return _condition;
 		}
-		set construct {
+		set {
 			_condition = value;
 			_condition.parent_node = this;
 		}



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]