Jürg Billeter [Wed, 25 Oct 2006 20:12:20 +0000 (20:12 +0000)]
start to use const specifier for strings to reduce number of warnings
2006-10-25 Jürg Billeter <j@bitron.ch>
* vala/valacodegenerator.vala, vala/valaarray.vala,
vala/valacallback.vala, vala/valaclass.vala, vala/valadatatype.vala,
vala/valaenum.vala, vala/valaflags.vala, vala/valainterface.vala,
vala/valastruct.vala, vala/valatypereference.vala, vapi/glib-2.0.vala:
start to use const specifier for strings to reduce number of warnings
during C compilation
svn path=/trunk/; revision=151
Jürg Billeter [Wed, 25 Oct 2006 18:03:27 +0000 (18:03 +0000)]
support base access update test base access update
2006-10-25 Jürg Billeter <j@bitron.ch>
* vala/parser.y, vala/valacodevisitor.vala,
vala/valasemanticanalyzer.vala, vala/valacodegenerator.vala,
vala/valabaseaccess.vala: support base access
* vala/vala.h, vala/Makefile.am: update
* tests/test-025.vala: test base access
* tests/Makefile.am: update
svn path=/trunk/; revision=150
Jürg Billeter [Wed, 25 Oct 2006 09:44:08 +0000 (09:44 +0000)]
Post-release version bump --version support always include config.h to
2006-10-25 Jürg Billeter <j@bitron.ch>
* configure.ac: Post-release version bump
* compiler/valacompiler.vala: --version support
* compiler/Makefile.am: always include config.h to keep compatibility
* vapi/config.vala: add binding for config.h
* vapi/Makefile.am: update
svn path=/trunk/; revision=149
Jürg Billeter [Wed, 25 Oct 2006 08:56:15 +0000 (08:56 +0000)]
support dependencies on constants
2006-10-25 Jürg Billeter <j@bitron.ch>
* vala/valasourcefile.vala: support dependencies on constants
svn path=/trunk/; revision=148
Jürg Billeter [Tue, 24 Oct 2006 21:01:48 +0000 (21:01 +0000)]
don't crash when comparing value type with null
2006-10-24 Jürg Billeter <j@bitron.ch>
* vala/valasemanticanalyzer.vala: don't crash when comparing value type
with null
svn path=/trunk/; revision=147
Jürg Billeter [Tue, 24 Oct 2006 20:35:07 +0000 (20:35 +0000)]
don't crash on already resolved type references support typeof expression
2006-10-24 Jürg Billeter <j@bitron.ch>
* vala/valasymbolresolver.vala: don't crash on already resolved type
references
* vala/valasemanticanalyzer.vala: support typeof expression
* vala/valacodegenerator.vala: improve support for null-terminated
arrays
* vala/valainterfacewriter.vala: don't write type arguments for arrays
svn path=/trunk/; revision=146
Jürg Billeter [Sun, 8 Oct 2006 17:53:08 +0000 (17:53 +0000)]
support enum values
2006-10-08 Jürg Billeter <j@bitron.ch>
* vala/parser.y: support enum values
svn path=/trunk/; revision=145
Jürg Billeter [Fri, 6 Oct 2006 12:18:46 +0000 (12:18 +0000)]
update for 0.0.4 release
2006-10-06 Jürg Billeter <j@bitron.ch>
* NEWS: update for 0.0.4 release
svn path=/trunk/; revision=144
Raffaele Sandrini [Fri, 6 Oct 2006 11:16:41 +0000 (11:16 +0000)]
add get and set value support add user (arbitrary) signal support
2006-10-06 Raffaele Sandrini <rasa@gmx.ch>
* vapi/glib-2.0.vala, vala/valaflags.vala, vala/valaenum.vala,
vala/valadatatype.vala, vala/valaarray.vala, vala/valaclass.vala,
vala/valastruct.vala: add get and set value support
* vala/valacodegenerator.vala: add user (arbitrary) signal support
* vala/valadatatype.vala, vala/valamemorymanager.vala,
vala/valastruct.vala: correctly honor ref types in type arguments
* ccode/valaccodedeclaration.vala, ccode/valaccodemodifiers.vala:
support register local variables
* ccode/valaccodememberaccess.vala: make one line creation possible
* vapi/glib-2.0.vala: fix return type of Glib.List.nth_data
* tests/test-024.vala: add user signal test
* tests/Makefile.am: update
svn path=/trunk/; revision=143
Jürg Billeter [Thu, 5 Oct 2006 21:32:08 +0000 (21:32 +0000)]
complete support for prefix increment and decrement operator
2006-10-05 Jürg Billeter <j@bitron.ch>
* vala/parser.y, vala/valasemanticanalyzer.vala: complete support for
prefix increment and decrement operator
svn path=/trunk/; revision=142
Jürg Billeter [Thu, 5 Oct 2006 09:07:30 +0000 (09:07 +0000)]
transform compund assignments into simple assignments add default argument
2006-10-05 Jürg Billeter <j@bitron.ch>
* vala/valasemanticanalyzer.vala: transform compund assignments into
simple assignments
* vala/valabinaryexpression.vala: add default argument to construction
method
* tests/test-021.vala: test string += assignment
svn path=/trunk/; revision=141
Jürg Billeter [Wed, 4 Oct 2006 22:00:37 +0000 (22:00 +0000)]
correct takes_ownership in arrays add limited support for array length
2006-10-04 Jürg Billeter <j@bitron.ch>
* vala/valasymbolresolver.vala: correct takes_ownership in arrays
* vala/valacodegenerator.vala: add limited support for array length
fields, store array length from array creation expression, copy array
length in array assignments
* vala/valafield.vala: support NoArrayLength attribute
* compiler/valacompiler.vala: add NoArrayLength attribute to option
arrays
svn path=/trunk/; revision=140
Jürg Billeter [Wed, 4 Oct 2006 13:17:07 +0000 (13:17 +0000)]
specify array element type as type argument create declarations for array
2006-10-04 Jürg Billeter <j@bitron.ch>
* vala/valasymbolresolver.vala, vala/valasemanticanalyzer.vala: specify
array element type as type argument
* vala/valacodegenerator.vala: create declarations for array length
variables, iterate over arrays by index if it has known length
* vala/valacharacterliteral.vala: correct return type of get_char
* vala/valanamespace.vala: process enums and flags first
* vala/valavariabledeclarator.vala: set parent_node of initializer, add
replace method
* tests/test-023.vala: test list construction
* tests/Makefile.am: update
svn path=/trunk/; revision=139
Jürg Billeter [Tue, 3 Oct 2006 18:16:45 +0000 (18:16 +0000)]
don't use InstanceCast for callbacks
2006-10-03 Jürg Billeter <j@bitron.ch>
* vala/valacodegenerator.vala: don't use InstanceCast for callbacks
svn path=/trunk/; revision=138
Raffaele Sandrini [Thu, 28 Sep 2006 12:21:08 +0000 (12:21 +0000)]
add one dimensional array assignment support testcase for array
2006-09-28 Raffaele Sandrini <rasa@gmx.ch>
* vala/valacodegenerator.vala, vala/valasemanticanalyzer.vala,
vala/valamemorymanager.vala: add one dimensional array assignment
support
* tests/test-022.vala: testcase for array creation/assignment
* tests/Makefile.am: update
svn path=/trunk/; revision=137
Jürg Billeter [Thu, 28 Sep 2006 06:44:12 +0000 (06:44 +0000)]
add and improve various types
2006-09-28 Jürg Billeter <j@bitron.ch>
* vapi/glib-2.0.vala: add and improve various types
svn path=/trunk/; revision=136
Jürg Billeter [Wed, 27 Sep 2006 22:31:27 +0000 (22:31 +0000)]
set attributes also for non-readable properties support interface signals
2006-09-28 Jürg Billeter <j@bitron.ch>
* vala/parser.y: set attributes also for non-readable properties
* vala/valacodegenerator.vala: support interface signals
* vala/valainvocationexpression.vala,
vala/valaobjectcreationexpression.vala: fix problem when children
change while iterating over them
svn path=/trunk/; revision=135
Jürg Billeter [Wed, 27 Sep 2006 20:01:11 +0000 (20:01 +0000)]
support InstanceByReference attribute add Filename struct, fix Process
2006-09-27 Jürg Billeter <j@bitron.ch>
* vala/valacodegenerator.vala, vala/valainterfacewriter.vala,
vala/valamethod.vala: support InstanceByReference attribute
* vapi/glib-2.0.vala: add Filename struct, fix Process methods
* vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala, vapi/pango.vala:
fix static methods without parameters, add InstanceByReference
attributes
svn path=/trunk/; revision=134
Jürg Billeter [Wed, 27 Sep 2006 19:36:15 +0000 (19:36 +0000)]
fix static modifier for methods without parameters
2006-09-27 Jürg Billeter <j@bitron.ch>
* vapigen/valagidlparser.vala: fix static modifier for methods without
parameters
svn path=/trunk/; revision=133
Jürg Billeter [Wed, 27 Sep 2006 17:49:40 +0000 (17:49 +0000)]
set instance_by_reference flag on generated methods if appropriate set
2006-09-27 Jürg Billeter <j@bitron.ch>
* vapigen/valagidlparser.vala: set instance_by_reference flag on
generated methods if appropriate
* packages/gtk+-2.0/gtk+-2.0.metadata: set ellipsis for
gtk_show_about_dialog
svn path=/trunk/; revision=132
Jürg Billeter [Wed, 27 Sep 2006 15:43:24 +0000 (15:43 +0000)]
visit interface signals obey lock keyword add interface signals
2006-09-27 Jürg Billeter <j@bitron.ch>
* vala/valainterface.vala: visit interface signals
* vala/valainterfacewriter.vala: obey lock keyword
* vapi/atk.vala, vapi/gtk+-2.0.vala: add interface signals
svn path=/trunk/; revision=131
Jürg Billeter [Wed, 27 Sep 2006 15:39:51 +0000 (15:39 +0000)]
support interface signals change some signal declarations to fix parsing
2006-09-27 Jürg Billeter <j@bitron.ch>
* vapigen/valagidlparser.vala: support interface signals
* packages/gtk+-2.0/gtk+-2.0.patch: change some signal declarations
to fix parsing
* packages/gtk+-2.0/gtk+-2.0.gidl: regenerated
* packages/gtk+-2.0/gtk+-2.0.metadata: add missing emitter methods
svn path=/trunk/; revision=130
Raffaele Sandrini [Wed, 27 Sep 2006 12:37:03 +0000 (12:37 +0000)]
add threading and assorted structures add an additional abstraction for
2006-09-27 Raffaele Sandrini <rasa@gmx.ch>
* vapi/glib-2.0.vala: add threading and assorted structures
* vala/valamember.vala: add an additional abstraction for all members
of a class
* vala/valalockstatement.vala, vala/valacodegenerator.vala,
vala/scanner.l, vala/valasemanticanalyzer.vala,
vala/valalockable.vala, vala/parser.y, vala/valacodevisitor.vala:
add lock feature to vala
* vala/valamethod.vala, vala/valafield.vala, vala/valaconstant.vala,
vala/valasignal.vala, vala/valaproperty.vala: make those members
lockable
* vala/valacodegenerator.vala: use member abstraction to simlify field
initialisation and destruction
* vala/valacodegenerator.vala: introduce new C macros VALA_FREE_CHECKED
and VALA_FREE_UNCHECKED to make safe freeing code nicer
* vala/vala.h: update and bring arraycreationexpression in order
* vala/Makefile.am: update
svn path=/trunk/; revision=129
Jürg Billeter [Wed, 27 Sep 2006 08:57:30 +0000 (08:57 +0000)]
add Process struct with spawn functions
2006-09-27 Jürg Billeter <j@bitron.ch>
* vapi/glib-2.0.vala: add Process struct with spawn functions
svn path=/trunk/; revision=128
Jürg Billeter [Wed, 27 Sep 2006 08:32:23 +0000 (08:32 +0000)]
fix global methods
2006-09-27 Jürg Billeter <j@bitron.ch>
* vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala, vapi/pango.vala:
fix global methods
svn path=/trunk/; revision=127
Jürg Billeter [Wed, 27 Sep 2006 08:30:41 +0000 (08:30 +0000)]
move global methods from Global struct to namespace, remove leading
2006-09-27 Jürg Billeter <j@bitron.ch>
* gidlgen/gapi2xml.pl: move global methods from Global struct to
namespace, remove leading underscore in names of global methods
* vapigen/valagidlparser.vala: support namespace methods
* packages/atk/atk.gidl, packages/gdk-2.0/gdk-2.0.gidl,
packages/pango/pango.gidl, packages/gtk+-2.0/gtk+-2.0.gidl:
regenerated
* packages/gtk+-2.0/gtk+-2.0.metadata: mark GtkActionEntry as value type
svn path=/trunk/; revision=126
Jürg Billeter [Tue, 26 Sep 2006 21:09:44 +0000 (21:09 +0000)]
add string.reverse, Source.remove, Environment.get_variable,
2006-09-26 Jürg Billeter <j@bitron.ch>
* vapi/glib-2.0.vala: add string.reverse, Source.remove,
Environment.get_variable, Environment.set_variable,
Environment.get_current_dir, Path.is_absolute, Path.skip_root
svn path=/trunk/; revision=125
Jürg Billeter [Tue, 26 Sep 2006 20:35:51 +0000 (20:35 +0000)]
add missing cast
2006-09-26 Jürg Billeter <j@bitron.ch>
* vala/valaassignment.vala, vala/valabinaryexpression.vala,
vala/valacastexpression.vala, vala/valadostatement.vala,
vala/valaexpressionstatement.vala, vala/valaforeachstatement.vala,
vala/valaforstatement.vala, vala/valaifstatement.vala,
vala/valainvocationexpression.vala, vala/valamemberaccess.vala,
vala/valaparenthesizedexpression.vala, vala/valareturnstatement.vala,
vala/valaswitchstatement.vala, vala/valaunaryexpression.vala,
vala/valawhilestatement.vala: add missing cast
svn path=/trunk/; revision=124
Jürg Billeter [Sun, 3 Sep 2006 06:25:18 +0000 (06:25 +0000)]
make character_literal stricter support more method return types, support
2006-09-03 Jürg Billeter <j@bitron.ch>
* vala/scanner.l: make character_literal stricter
* vala/valacodegenerator.vala: support more method return types,
support unicode character literals
* vala/valacharacterliteral.vala: validate input, add get_char method
svn path=/trunk/; revision=123
Jürg Billeter [Sat, 2 Sep 2006 18:59:15 +0000 (18:59 +0000)]
always default type arguments to strong avoid unnecessary ref/unref pair
2006-09-02 Jürg Billeter <j@bitron.ch>
* vala/parser.y, vala/valacodecontext.vala,
vala/valasemanticanalyzer.vala, vala/valamemorymanager.vala,
vala/valacodegenerator.vala, vala/valaarraycreationexpression.vala,
vala/valablock.vala, vala/valacallback.vala, vala/valaclass.vala,
vala/valaelementaccess.vala, vala/valafield.vala,
vala/valaformalparameter.vala, vala/valaforstatement.vala,
vala/valainitializerlist.vala, vala/valainterface.vala,
vala/valainvocationexpression.vala, vala/valainvokable.vala,
vala/valalambdaexpression.vala,
vala/valalocalvariabledeclaration.vala, vala/valamemberaccess.vala,
vala/valamethod.vala, vala/valanamespace.vala,
vala/valaobjectcreationexpression.vala, vala/valasignal.vala,
vala/valasourcefile.vala, vala/valastruct.vala,
vala/valaswitchsection.vala, vala/valaswitchstatement.vala,
vala/valatypereference.vala, vala/valavariabledeclarator.vala,
ccode/valaccodefragment.vala, vapi/glib-2.0.vala: always default type
arguments to strong
* vala/valacodevisitor.vala, vala/valacodegenerator.vala,
vala/valaexpression.vala, vala/valareturnstatement.vala: avoid
unnecessary ref/unref pair in return expression
* vala/valatypereference.vala: copy type arguments in copy method, too
* vala/valasemanticanalyzer.vala: set type arguments in type_reference
of ObjectCreationExpression
* vala/valadatatype.vala: fix warning
svn path=/trunk/; revision=122
Jürg Billeter [Sat, 2 Sep 2006 16:18:35 +0000 (16:18 +0000)]
special case construction of GLib.List and GLib.SList (reported by Cayle
2006-09-02 Jürg Billeter <j@bitron.ch>
* vala/valacodegenerator.vala: special case construction of GLib.List
and GLib.SList (reported by Cayle Graumann)
svn path=/trunk/; revision=121
Jürg Billeter [Sat, 2 Sep 2006 15:49:13 +0000 (15:49 +0000)]
prepare to support protected members
2006-09-02 Jürg Billeter <j@bitron.ch>
* vala/scanner.l, vala/parser.y, vala/valasemanticanalyzer.vala,
vala/valacodegenerator.vala, vala/valainterfacewriter.vala,
vala/valamemberaccessibility.vala: prepare to support protected
members
svn path=/trunk/; revision=120
Jürg Billeter [Sat, 2 Sep 2006 15:29:55 +0000 (15:29 +0000)]
don't set parent_node in parser support string + operator set parent_node
2006-09-02 Jürg Billeter <j@bitron.ch>
* vala/parser.y: don't set parent_node in parser
* vala/valasemanticanalyzer.vala: support string + operator
* vala/valaassignment.vala, vala/valabinaryexpression.vala,
vala/valacastexpression.vala, vala/valacodenode.vala,
vala/valadostatement.vala, vala/valaexpressionstatement.vala,
vala/valaforeachstatement.vala, vala/valaforstatement.vala,
vala/valaifstatement.vala, vala/valainvocationexpression.vala,
vala/valamemberaccess.vala, vala/valaobjectcreationexpression.vala,
vala/valaparenthesizedexpression.vala, vala/valareturnstatement.vala,
vala/valaswitchstatement.vala, vala/valaunaryexpression.vala,
vala/valawhilestatement.vala: set parent_node of child nodes, add
replace method
* vala/valanullliteral.vala: add default argument to construction method
* tests/test-021.vala: test string + operator
* tests/Makefile.am: update
svn path=/trunk/; revision=119
Jürg Billeter [Sat, 2 Sep 2006 13:13:55 +0000 (13:13 +0000)]
support integer and floating point suffixes use correct type for integer
2006-09-02 Jürg Billeter <j@bitron.ch>
* vala/scanner.l: support integer and floating point suffixes
* vala/valasemanticanalyzer.vala: use correct type for integer and
floating point literals
* vala/valaintegerliteral.val, vala/valarealliteral.vala: add
get_type_name method
* vapi/glib-2.0.vala: add string to int64 conversion method
svn path=/trunk/; revision=118
Jürg Billeter [Sat, 2 Sep 2006 11:04:24 +0000 (11:04 +0000)]
use IntegerType, FloatingType, and rank attributes to analyze arithmetic
2006-09-02 Jürg Billeter <j@bitron.ch>
* vala/valasemanticanalyzer.vala: use IntegerType, FloatingType, and
rank attributes to analyze arithmetic operations
* vala/valacodegenerator.vala: generate C casts for explicit value-type
casts
* vala/valastruct.vala: add is_integer_type, is_floating_type, and
get_rank methods, add IntegerType and FloatingType attributes
* vala/valasemanticanalyzer.vala, vala/valacastexpression.vala,
vala/valainstancecast.vala, ccode/valaccodecastexpression.vala: fix
typos
* vapi/glib-2.0.vala: add int16, uint16, int32, uint32, use IntegerType
and FloatingType attributes
svn path=/trunk/; revision=117
Jürg Billeter [Sat, 2 Sep 2006 09:05:41 +0000 (09:05 +0000)]
set accessibility for constants set return type in property set accessors
2006-09-02 Jürg Billeter <j@bitron.ch>
* vala/parser.y: set accessibility for constants
* vala/valasemanticanalyzer.vala: set return type in property set
accessors to void
* vala/valacodegenerator.vala: move public constants to header file
* vala/valaclass.vala: don't create fields for properties in VAPI files
* vala/valaconstant.vala: add access member
svn path=/trunk/; revision=116
Jürg Billeter [Sat, 2 Sep 2006 08:45:28 +0000 (08:45 +0000)]
mark Matrix as reference type
2006-09-02 Jürg Billeter <j@bitron.ch>
* vapi/cairo.vala: mark Matrix as reference type
svn path=/trunk/; revision=115
Jürg Billeter [Thu, 24 Aug 2006 16:03:10 +0000 (16:03 +0000)]
mark virtual methods appropriately
2006-08-24 Jürg Billeter <j@bitron.ch>
* vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala, vapi/pango.vala:
mark virtual methods appropriately
svn path=/trunk/; revision=114
Jürg Billeter [Thu, 24 Aug 2006 16:00:54 +0000 (16:00 +0000)]
mark virtual functions appropriately
2006-08-24 Jürg Billeter <j@bitron.ch>
* vapigen/valagidlparser.vala: mark virtual functions appropriately
svn path=/trunk/; revision=113
Jürg Billeter [Thu, 24 Aug 2006 12:55:24 +0000 (12:55 +0000)]
add possibility to change interface type struct cname, default to `Iface'
2006-08-24 Jürg Billeter <j@bitron.ch>
* vala/valaattributeprocessor.vala, vala/valacodegenerator.vala,
vala/valainterface.vala, vala/valainterfaceregisterfunction.vala: add
possibility to change interface type struct cname, default to `Iface'
suffix (reported by Dominique Würtz)
svn path=/trunk/; revision=112
Jürg Billeter [Wed, 23 Aug 2006 13:12:39 +0000 (13:12 +0000)]
support calling non-abstract interface methods add get_base_types method
2006-08-23 Jürg Billeter <j@bitron.ch>
* vala/valasemanticanalyzer.vala: support calling non-abstract interface
methods
* vala/valainterface.vala: add get_base_types method
svn path=/trunk/; revision=111
Jürg Billeter [Sun, 20 Aug 2006 20:13:49 +0000 (20:13 +0000)]
Post-release version bump, fail if flex or bison not found
2006-08-20 Jürg Billeter <j@bitron.ch>
* configure.ac: Post-release version bump, fail if flex or bison not
found
svn path=/trunk/; revision=110
Jürg Billeter [Fri, 18 Aug 2006 20:35:47 +0000 (20:35 +0000)]
update for 0.0.3 release
2006-08-18 Jürg Billeter <j@bitron.ch>
* NEWS: update for 0.0.3 release
svn path=/trunk/; revision=109
Jürg Billeter [Fri, 18 Aug 2006 16:46:56 +0000 (16:46 +0000)]
remove argc parameter
2006-08-18 Jürg Billeter <j@bitron.ch>
* vapigen/valavapigen.vala, packages/gtk+-2.0/gtk+-2.0-custom.vala:
remove argc parameter
svn path=/trunk/; revision=108
Jürg Billeter [Fri, 18 Aug 2006 16:44:43 +0000 (16:44 +0000)]
use array length functionality
2006-08-18 Jürg Billeter <j@bitron.ch>
* compiler/valacompiler.vala, vapi/glib-2.0.vala, vapi/gtk+-2.0.vala:
use array length functionality
svn path=/trunk/; revision=107
Jürg Billeter [Fri, 18 Aug 2006 16:05:15 +0000 (16:05 +0000)]
support implicit array length parameter support NoArrayLength attribute
2006-08-18 Jürg Billeter <j@bitron.ch>
* vala/valacodegenerator.vala: support implicit array length parameter
* vala/valainterfacewriter.vala, vala/valaformalparameter.vala,
vala/valamethod.vala: support NoArrayLength attribute
* compiler/valacompiler.vala, vapi/atk.vala, vapi/cairo.vala,
vapi/gdk-2.0.vala, vapi/glib-2.0.vala, vapi/gtk+-2.0.vala,
vapi/pango.vala: add NoArrayLength attributes
* tests/test-001.vala, tests/test-002.vala, tests/test-003.vala,
tests/test-004.vala, tests/test-005.vala, tests/test-006.vala,
tests/test-007.vala, tests/test-008.vala, tests/test-009.vala,
tests/test-010.vala, tests/test-011.vala, tests/test-012.vala,
tests/test-013.vala, tests/test-014.vala, tests/test-015.vala,
tests/test-016.vala, tests/test-017.vala, tests/test-018.vala,
tests/test-019.vala, tests/test-020.vala: remove argc parameter
svn path=/trunk/; revision=106
Jürg Billeter [Fri, 18 Aug 2006 16:03:55 +0000 (16:03 +0000)]
set no_array_length flag on generated methods add NoArrayLength attribute
2006-08-18 Jürg Billeter <j@bitron.ch>
* vapigen/valagidlparser.vala: set no_array_length flag on generated
methods
* vapigen/valavapigen.vala, packages/gtk+-2.0/gtk+-2.0-custom.vala: add
NoArrayLength attribute
svn path=/trunk/; revision=105
Jürg Billeter [Fri, 18 Aug 2006 09:24:59 +0000 (09:24 +0000)]
remove read/write tokens support package dependencies vapi/gdk-2.0.deps
2006-08-18 Jürg Billeter <j@bitron.ch>
* vala/parser.y: remove read/write tokens
* compiler/valacompiler.vala: support package dependencies
* vapi/gdk-2.0.deps
* vapi/gtk+-2.0.deps
* vapi/Makefile.am: update
svn path=/trunk/; revision=104
Jürg Billeter [Fri, 18 Aug 2006 09:20:46 +0000 (09:20 +0000)]
packages/gdk-2.0/gdk-2.0.deps packages/gtk+-2.0/gtk+-2.0.deps
2006-08-18 Jürg Billeter <j@bitron.ch>
* packages/gdk-2.0/gdk-2.0.deps
* packages/gtk+-2.0/gtk+-2.0.deps
svn path=/trunk/; revision=103
Jürg Billeter [Fri, 18 Aug 2006 08:49:06 +0000 (08:49 +0000)]
support base types for structs obey set keyword add SignalInvocationHint,
2006-08-18 Jürg Billeter <j@bitron.ch>
* vala/parser.y, vala/valastruct.vala: support base types for structs
* vala/valainterfacewriter.vala: obey set keyword
* vapi/glib-2.0.vala: add SignalInvocationHint, SignalEmissionHook,
SignalFlags, ValueArray, Math, Timeout, and PtrArray
* vapi/cairo.vala: initial cairo binding
* vapi/pango.vala, vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala:
bindings generated from Pango 1.13.5, ATK 1.12.1, and GTK+ 2.10.1
* vapi/Makefile.am: update
svn path=/trunk/; revision=102
Jürg Billeter [Fri, 18 Aug 2006 08:40:48 +0000 (08:40 +0000)]
Initial import of vapigen.
* Initial import of vapigen.
svn path=/trunk/; revision=101
Raffaele Sandrini [Fri, 11 Aug 2006 14:00:39 +0000 (14:00 +0000)]
make those classes ready to process multidimensional arrays. remove
2006-08-11 Raffaele Sandrini <rasa@gmx.ch>
* vala/valasymbolresolver.vala, vala/valatypereference.vala,
vala/valaelementaccess.vala, vala/valadatatype.vala, vala/parser.y,
vala/valaarray.vala: make those classes ready to process
multidimensional arrays.
* vala/scanner.l: remove ARRAY_QUALIFIER token
* vala/valasemanticanalyzer.vala, vala/parser.y,
vala/valacodegenerator.vala, vala/valacodegenerator.vala,
vala/valacodevisitor.vala: add multidimensional array support however
only one dimensional arrays can be created yet
* vala/Makefile.am, vala/vala.h: update
* vala/valatypereference.vala: remove source reference parameter
when creating from an expression
* vala/valacodegenerator.vala: add support for uint, long and ulong
properties
svn path=/trunk/; revision=100
Jürg Billeter [Thu, 10 Aug 2006 20:48:38 +0000 (20:48 +0000)]
support hexadecimal and octal integer literals, support hexadecimal escape
2006-08-10 Jürg Billeter <j@bitron.ch>
* vala/scanner.l: support hexadecimal and octal integer literals,
support hexadecimal escape sequences, support BASE and THIS
* vala/parser.y: use BASE and THIS keywords
* vala/valasemanticanalyzer.vala: don't use new base keyword as variable
name
* vala/valacodegenerator.vala: simplify code
* vala/valainterfacewriter.vala: obey base keyword
svn path=/trunk/; revision=99
Jürg Billeter [Thu, 10 Aug 2006 15:50:14 +0000 (15:50 +0000)]
fix memory management in switch statements extend switch statement test
2006-08-10 Jürg Billeter <j@bitron.ch>
* vala/valacodegenerator.vala: fix memory management in switch
statements
* tests/test-020.vala: extend switch statement test
svn path=/trunk/; revision=98
Jürg Billeter [Thu, 10 Aug 2006 15:30:52 +0000 (15:30 +0000)]
support switch statements add has_default_label () and get_statements ()
2006-08-10 Jürg Billeter <j@bitron.ch>
* vala/valacodegenerator.vala: support switch statements
* vala/valaswitchsection.vala: add has_default_label () and
get_statements () methods
* vala/valaswitchstatement.vala: add get_sections () method
* ccode/valaccodedostatement.vala
* ccode/Makefile.am: update
* tests/test-020.vala: test switch statements
* tests/Makefile.am: update
svn path=/trunk/; revision=97
Jürg Billeter [Thu, 10 Aug 2006 12:46:48 +0000 (12:46 +0000)]
use Invokable vala/valainvokable.vala implement Invokable update
2006-08-10 Jürg Billeter <j@bitron.ch>
* vala/valasemanticanalyzer.vala, vala/valacodegenerator.vala: use
Invokable
* vala/valainvokable.vala
* vala/valafield.vala, vala/valaformalparameter.vala,
vala/valamethod.vala, valasignal.vala,
vala/valavariabledeclarator.vala: implement Invokable
* vala/Makefile.am: update
svn path=/trunk/; revision=96
Jürg Billeter [Thu, 10 Aug 2006 11:54:15 +0000 (11:54 +0000)]
support constants in namespaces and constants without initializer depend
2006-08-10 Jürg Billeter <j@bitron.ch>
* vala/parser.y: support constants in namespaces and constants without
initializer
* vala/valasemanticanalyzer.vala: depend on implemented interfaces
* vala/valacodegenerator.vala: always include glib-object.h for
interfaces, append NULL to variable argument list calls
* vala/valainterfacewriter.vala: support constants and ellipsis
parameters
* vala/valaconstant.vala: make initializer optional
* vala/valainterface.vala: implement get_lower_case_cprefix ()
* vala/valanamespace.vala: support constants
svn path=/trunk/; revision=95
Jürg Billeter [Thu, 10 Aug 2006 08:59:03 +0000 (08:59 +0000)]
accept real literals with trailing dot ignore non-type symbols support
2006-08-10 Jürg Billeter <j@bitron.ch>
* vala/scanner.l: accept real literals with trailing dot
* vala/valasymbolresolver.vala: ignore non-type symbols
* vala/valacodegenerator.vala: support float and double properties,
adapt to Field changes, support compound assignments in properties
* vala/valainterfacewriter.vala: support ReferenceType attribute
* vala/valaclass.vala: implement get_lower_case_cprefix ()
* vala/valadatatype.vala: add get_lower_case_cprefix () method
* vala/valafield.vala: let get_cname return full C name
* vala/valamethod.vala: use DataType.get_lower_case_cprefix ()
* vala/valastruct.vala: implement get_lower_case_cprefix (), add
set_is_reference_type () method
svn path=/trunk/; revision=94
Jürg Billeter [Wed, 9 Aug 2006 15:46:25 +0000 (15:46 +0000)]
adapt to Vala.Signal change process signal attributes manage memory of
2006-08-09 Jürg Billeter <j@bitron.ch>
* vala/parser.y: adapt to Vala.Signal change
* vala/valaattributeprocessor.vala: process signal attributes
* vala/valacodegenerator.vala: manage memory of element access
expressions, mark get_property and set_property functions static,
support signal emitter functions
* vala/valacodecontext.vala: use get_cinclude_filename method
* vala/valainterfacewriter.vala: use C header filename of namespace,
support signals, support NoAccessorMethod attribute
* vala/valadatatype.vala: add default arguments
* vala/valaenum.vala: make set_cprefix method public
* vala/valanamespace.vala: add get_cheader_filename and
set_cheader_filename methods
* vala/valasignal.vala: add has_emitter property, add process_attributes
method
* vala/valasourcefile.vala: add get_cinclude_filename method
* compiler/valacompiler.vala: adapt to SourceFile changes
svn path=/trunk/; revision=93
Jürg Billeter [Sat, 5 Aug 2006 12:00:46 +0000 (12:00 +0000)]
only parse .vala source files support disabling automatic property
2006-08-05 Jürg Billeter <j@bitron.ch>
* vala/valaparser.vala: only parse .vala source files
* vala/valasymbolbuilder.vala, vala/valaproperty.vala: support disabling
automatic property accessor generation
* vala/valasemanticanalyzer.vala: fix typo
* vala/valacodegenerator.vala, vala/valainterfacewriter.vala,
vala/valacodecontext.vala: use correct includes for libraries
* vala/valacodegenerator.vala: use get_canonical_cconstant method for
signals
* vala/valainterfacewriter.vala: support interfaces, non-null types,
callbacks, and construction methods
* vala/valasignal.vala: add get_canonical_cconstant method
* vala/valaenum.vala, vala/valainterface.vala, vala/valanamespace.vala,
vala/valastruct: add default arguments
* vala/Makefile.am: install libvala.so and header files
* ccode/Makefile.am: install header files
* compiler/valacompiler.vala: set library name in code context
* compiler/Makefile.am: adapt to build system changes
* vapi/glib-2.0.vala: add skeletons for Callback, Closure, IOChannel,
TimeVal, Scanner, SpawnFlags, OptionGroup, MarkupParser, and Quark
* vapi/Makefile.am: add vala-1.0.vala
* vala-1.0.pc.in
* configure.ac: disable static library by default, add vala-1.0.pc
* Makefile.am: add vala-1.0.pc
svn path=/trunk/; revision=92
Jürg Billeter [Thu, 3 Aug 2006 06:42:30 +0000 (06:42 +0000)]
Post-release version bump.
2006-08-02 Jürg Billeter <j@bitron.ch>
* configure.ac: Post-release version bump.
svn path=/trunk/; revision=91
Jürg Billeter [Wed, 2 Aug 2006 19:20:57 +0000 (19:20 +0000)]
update for 0.0.2 release check for floating reference in construction
2006-08-02 Jürg Billeter <j@bitron.ch>
* NEWS: update for 0.0.2 release
* vala/valasemanticanalyzer.vala: check for floating reference in
construction methods
* vala/valasourcefile.vala, vala/valacodegenerator.vala,
ccode/valaccodeincludedirective.vala: differentiate between
package-internal and external includes
* vapi/gtk+-2.0.vala: port to construction methods
svn path=/trunk/; revision=90
Jürg Billeter [Wed, 2 Aug 2006 18:22:00 +0000 (18:22 +0000)]
port to construction methods add interface documentation, use implicit
2006-08-02 Jürg Billeter <j@bitron.ch>
* port to construction methods
* vala/valaparenthesizedexpression.vala, vala/valareport.vala,
vala/valareturnstatement.vala, vala/valasourcefilecycle.vala,
vala/valasourcereference.vala, vala/valatypecheck.vala,
vala/valatypeofexpression.vala, vala/valatypeparameter.vala: add
interface documentation, use implicit namespace specification
* vala/Makefile.am: sort source file list
svn path=/trunk/; revision=89
Jürg Billeter [Wed, 2 Aug 2006 15:59:07 +0000 (15:59 +0000)]
add support for construction methods add to_string method support storing
2006-08-02 Jürg Billeter <j@bitron.ch>
* vala/parser.y, vala/valacodevisitor.vala, vala/valasymbolbuilder.vala,
vala/valasemanticanalyzer.vala, vala/valacodegenerator.vala,
vala/valainterfacewriter.vala, vala/valaclass.vala,
vala/valaexpressionstatement.vala, vala/valamethod.vala,
vala/valaobjectcreationexpression.vala, vala/valastatement.vala,
vala/valastruct.vala: add support for construction methods
* vala/valabooleanliteral.vala, vala/valaexpression.vala,
vala/valaintegerliteral.vala, vala/valaliteral.vala,
vala/valaliteralexpression.vala, vala/valamemberaccess.vala: add
to_string method
* vala/valamemberaccess.vala, vala/valatypereference.vala: support
storing type arguments in MemberAccess
* vala/valacodenode.vala: add parent_node property
* vala/parser.y, vala/valaifstatement.vala: only allow blocks as
embedded statements
* vala/valaenum.vala: implement get_type_id method
* vala/valainterfacewriter.vala: output default expressions of formal
parameters
* vala/valaformalparameter.vala: visit default expression
* vala/valaobjectcreationexpression.vala, vala/valanullliteral.vala,
vala/valaproperty.vala, vala/valapropertyaccessor.vala: add interface
documentation, use implicit namespace specification
* vala/vala.h: add valaelementaccess.h and valarealliteral.h
* ccode/valaccodememberaccess.vala: don't mark is_pointer as construct
* vapi/glib-2.0.vala: add GValue
* vapi/gtk+-2.0.vala: small updates
svn path=/trunk/; revision=88
Jürg Billeter [Mon, 31 Jul 2006 09:45:56 +0000 (09:45 +0000)]
support prefix increment and decrement, fix parsing opening parens fix
2006-07-31 Jürg Billeter <j@bitron.ch>
* vala/parser.y: support prefix increment and decrement, fix parsing
opening parens
* vala/valasemanticanalyzer.vala: fix some bugs in error handling,
support prefix increment and decrement
* vala/valacodegenerator.vala: support prefix increment and decrement
* vala/valanamespace.vala: add interface documentation, use implicit
namespace specification
* vala/valaunaryexpression.vala: support prefix increment and decrement
* ccode/valaccodeunaryexpression.vala: support prefix increment and
decrement
* vapi/glib-2.0.vala: add Environment struct
svn path=/trunk/; revision=87
Jürg Billeter [Thu, 27 Jul 2006 16:18:05 +0000 (16:18 +0000)]
support CASE, DEFAULT, DO, and SWITCH support switch and do statements add
2006-07-27 Jürg Billeter <j@bitron.ch>
* vala/scanner.l: support CASE, DEFAULT, DO, and SWITCH
* vala/parser.y: support switch and do statements
* vala/valacodevisitor.vala: add support for switch and do statements
* vala/valadostatement.vala
* vala/valaswitchlabel.vala
* vala/valaswitchsection.vala
* vala/valaswitchstatement.vala
* vala/valastatement.vala, vala/valasymbol.vala,
vala/valaunaryexpression.vala, vala/valavariabledeclarator.vala,
vala/valawhilestatement.vala: add interface documentation, use
implicit namespace specification
* vala/vala.h, vala/Makefile.am: update
* vapi/glib-2.0.vala: don't use default keyword
svn path=/trunk/; revision=86
Jürg Billeter [Thu, 27 Jul 2006 09:00:03 +0000 (09:00 +0000)]
support for loops with local variable declaration in initializer
2006-07-27 Jürg Billeter <j@bitron.ch>
* vala/parser.y: support for loops with local variable declaration in
initializer
svn path=/trunk/; revision=85
Jürg Billeter [Thu, 27 Jul 2006 07:51:42 +0000 (07:51 +0000)]
don't require developer to explicitly write static in namespace field
2006-07-27 Jürg Billeter <j@bitron.ch>
* vala/parser.y: don't require developer to explicitly write static in
namespace field declarations, support type parameters in interfaces
and callbacks
* vala/valasymbolresolver.vala: support interfaces and callbacks
* vala/valasemanticanalyzer.vala: use is_subtype_of method, support
callbacks in fields
* vala/valamemorymanager.vala: support callbacks in fields
* vala/valacodegenerator.vala: support callbacks in fields
* vala/valacallback.vala: support type parameters
* vala/valaclass.vala: add is_subtype_of method
* vala/valadatatype.vala: add is_subtype_of method
* vala/valainterface.vala: add is_subtype_of method
svn path=/trunk/; revision=84
Jürg Billeter [Wed, 26 Jul 2006 19:46:35 +0000 (19:46 +0000)]
support casting arrays don't require developer to explicitly write static
2006-07-26 Jürg Billeter <j@bitron.ch>
* vala/scanner.l: support casting arrays
* vala/parser.y: don't require developer to explicitly write static in
namespace method declarations
* vala/valaarray.vala: correct cname for arrays with value-type elements
* vala/valacodenode.vala: save source line reference in ccodenode
* ccode/valaccodelinedirective.vala
* ccode/valaccodenode.vala: support source line reference
* ccode/Makefile.am: update
* vapi/glib-2.0.vala: add to_string methods to integer types, add size
method to string, add u_sleep method to Thread, fix memory management
in List and SList, add sort method to List
svn path=/trunk/; revision=83
Jürg Billeter [Wed, 19 Jul 2006 18:16:28 +0000 (18:16 +0000)]
use more expressive property names, add stricter () method adapt to
2006-07-19 Jürg Billeter <j@bitron.ch>
* vala/valatypereference.vala: use more expressive property names, add
stricter () method
* vala/parser.y, vala/valasymbolbuilder.vala,
vala/valasymbolresolver.vala, vala/valasemanticanalyzer.vala,
vala/valamemorymanager.vala, vala/valacodegenerator.vala,
vala/valainterfacewriter.vala, vala/valasourcefile.vala,
vala/valacallback.vala, vala/valaclassregisterfunction.vala,
vala/valasignal.vala: adapt to changes in TypeReference
* vala/valasourcefile.vala: replace public fields by properties /
private fields
* vala/valacodecontext.vala: adapt to changes in SourceFile
* vala/valaparser.vala: correct handling of source files without header
comments
* vala/valasymbolbuilder.vala: don't generate code for VAPI files
* vala/valasemanticanalyzer.vala: report error respectively warning if
method return type misses ownership transfer
* vala/valainterfacewriter.vala: correct property declaration output
* vala/valaparser.vala, vala/valasourcefile.vala, vala/valaliteral.vala,
vala/valamemberaccessibility.vala, vala/valanamedargument.vala,
vala/valanamespacereference.vala, vala/valatypereference.vala: add
interface documentation, use implicit namespace specification
svn path=/trunk/; revision=82
Jürg Billeter [Tue, 18 Jul 2006 21:14:20 +0000 (21:14 +0000)]
make sure that current_scope isn't null start to support memory management
2006-07-18 Jürg Billeter <j@bitron.ch>
* vala/valasymbolresolver.vala: make sure that current_scope isn't null
* vala/valamemorymanager.vala: start to support memory management with
generics
* vala/valacodegenerator.vala: support iteration over SList, properties
without accessor methods
* vapi/glib-2.0.vala: add string.hash (), Error fields and SList
* vapi/gtk+-2.0.vala: add StatusIcon class
* README: mention exceptions
svn path=/trunk/; revision=81
Jürg Billeter [Sun, 16 Jul 2006 21:27:45 +0000 (21:27 +0000)]
Post-release version bump. remove g_object_unref call to fix crash in
2006-07-16 Jürg Billeter <j@bitron.ch>
* configure.ac: Post-release version bump.
* vala/parser.y: remove g_object_unref call to fix crash in parsing
array declarations
* vala/valasemanticanalyzer.vala, vala/valacodegenerator.vala: support
creating structs
* vapi/glib-2.0.vala: GString enhancements
* vapi/Makefile.am: dist gtk+-2.0.vala and pango.vala
svn path=/trunk/; revision=80
Jürg Billeter [Sat, 15 Jul 2006 11:49:53 +0000 (11:49 +0000)]
update for 0.0.1 release add introduction replace by LGPL add
2006-07-15 Jürg Billeter <j@bitron.ch>
* NEWS: update for 0.0.1 release
* README: add introduction
* COPYING: replace by LGPL
* compiler/valacompiler.vala: add /usr/local/share/vala/vapi ad default
vapi search dir
* vapi/glib-2.0.vala: File and HashTable enhancements
svn path=/trunk/; revision=79
Raffaele Sandrini [Fri, 14 Jul 2006 16:21:38 +0000 (16:21 +0000)]
add element access support add visit_postfix_expression implementation add
2006-07-14 Raffaele Sandrini <rasa@gmx.ch>
* vala/valacodegenerator.vala, vala/valasymbolresolver.vala,
vala/scanner.l, vala/valatypereference.vala,
vala/valasemanticanalyzer.vala, vala/valaelementaccess.vala,
vala/valadatatype.vala, vala/parser.y, vala/valaarray.vala,
vala/valacodevisitor.vala, ccode/valaccodeelementaccess.vala: add
element access support
* vala/valasemanticanalyzer.vala: add visit_postfix_expression
implementation
* tests/test-019.vala: add element access testcase
* vala/Makefile.am, tests/Makefile.am, ccode/Makefile.am: update
svn path=/trunk/; revision=78
Jürg Billeter [Fri, 14 Jul 2006 16:09:47 +0000 (16:09 +0000)]
ignore file-internal dependencies mark string literals as non-null, add
2006-07-14 Jürg Billeter <j@bitron.ch>
* vala/valacodecontext.vala: ignore file-internal dependencies
* vala/valasemanticanalyzer.vala: mark string literals as non-null, add
some implicit casts
* vala/valamemorymanager.vala: only check for leaks with reference
types, manage memory in field initializers
* vala/valacodegenerator.vala: add non-null parameter typechecks for
structs, simplify ref expression if expression is known to be non-null
* vapi/glib-2.0.vala: unichar, string, String, and Path enhancements,
add Base64 and Dir
svn path=/trunk/; revision=77
Jürg Billeter [Mon, 10 Jul 2006 15:05:19 +0000 (15:05 +0000)]
adapt to changes in InvocationExpression, LocalVariableDeclaration, and
2006-07-10 Jürg Billeter <j@bitron.ch>
* vala/parser.y: adapt to changes in InvocationExpression,
LocalVariableDeclaration, and InitializerList
* vala/valasemanticanalyzer.vala: add some implicit casts, fix assigning
callback to field, adapt to changes in InvocationExpression
* vala/valamemorymanager.vala: adapt to change in InvocationExpression
* vala/valacodegenerator.vala: fix signal handler without parameters,
fix access to value-type struct members, adapt to changes in
LocalVariableDeclaration, InitializerList, and InvocationExprssion
* vala/valaclass.vala: don't let private static fields influence
has_private_fields, correct marshaller type name
* vala/valaifstatement.vala, vala/valainitializerlist.vala,
vala/valainstancecast.vala, vala/valaintegerliteral.vala,
vala/valainvocationexpression.vala, vala/valaliteralexpression.vala,
vala/valalocalvariabledeclaration.vala: add interface documentation,
use implicit namespace specification
* compiler/valacompiler.vala: fix --vapidir handling
* vapi/glib-2.0.vala: add MainLoop, MainContext, IdleSource, Source, and
Thread
svn path=/trunk/; revision=76
Jürg Billeter [Sat, 8 Jul 2006 21:08:06 +0000 (21:08 +0000)]
don't allow write access to read-only properties adapt to changes in
2006-07-08 Jürg Billeter <j@bitron.ch>
* vala/valasemanticanalyzer.vala: don't allow write access to read-only
properties
* vala/valacodegenerator.vala: adapt to changes in CCodeFragment and
CCommaExpression
* vala/valapostfixexpression.vala, ccode/valaccodebinaryexpression.vala,
ccode/valaccodeblock.vala, ccode/valaccodebreakstatement.vala,
ccode/valaccodecasestatement.vala,
ccode/valaccodecommaexpressoin.vala, ccode/valaccodecomment.vala,
ccode/valaccodeconditionalexpression.vala,
ccode/valaccodeconstant.vala, ccode/valaccodecontinuestatement.vala,
ccode/valaccodedeclaration.vala, ccode/valaccodedeclarator.vala,
ccode/valaccodeenum.vala, ccode/valaccodeemptystatement.vala,
ccode/valaccodeexpressionstatement.vala,
ccode/valaccodeformalparameter.vala, ccode/valaccodeforstatement.vala,
ccode/valaccodefragment.vala, ccode/valaccodefunction.vala,
ccode/valaccodefunctioncall.vala,
ccode/valaccodefunctiondeclarator.vala,
ccode/valaccodeidentifier.vala, ccode/valaccodeifstatement.vala,
ccode/valaccodeincludedirective.vala,
ccode/valaccodeinitializerlist.vala,
ccode/valaccodemacroreplacement.vala,
ccode/valaccodememberaccess.vala, ccode/valaccodemodifiers.vala,
ccode/valaccodenewline.vala, ccode/valaccodeoncesection.vala,
ccode/valaccodeparenthesizedexpression.vala,
ccode/valaccodereturnstatement.vala, ccode/valaccodestatement.vala,
ccode/valaccodestruct.vala, ccode/valaccodeswitchstatement.vala,
ccode/valaccodeunaryexpression.vala,
ccode/valaccodevariabledeclarator.vala,
ccode/valaccodewhilestatement.vala, ccode/valaccodewriter.vala: add
interface documentation, use implicit namespace specification
svn path=/trunk/; revision=75
Jürg Billeter [Sat, 8 Jul 2006 14:33:04 +0000 (14:33 +0000)]
don't allow access to private members
2006-07-08 Jürg Billeter <j@bitron.ch>
* vala/valasemanticanalyzer.vala: don't allow access to private members
svn path=/trunk/; revision=74
Jürg Billeter [Sat, 8 Jul 2006 14:09:42 +0000 (14:09 +0000)]
check method signatures of overriding methods support abstract classes add
2006-07-08 Jürg Billeter <j@bitron.ch>
* vala/valasemanticanalyzer.vala: check method signatures of overriding
methods
* vala/parser.y, vala/valaclassregisterfunction.vala,
vala/valatyperegisterfunction.vala: support abstract classes
* vala/valamethod.vala: add equals method
* vala/valatypereference.vala: add equals method
* corrects overriding methods to match signatures of overridden methods
to fix build with current compiler
svn path=/trunk/; revision=73
Jürg Billeter [Sat, 8 Jul 2006 11:55:18 +0000 (11:55 +0000)]
adapt to ForStatement API changes make {get,set}_lower_case_csuffix
2006-07-08 Jürg Billeter <j@bitron.ch>
* vala/parser.y, vala/valacodegenerator.vala: adapt to ForStatement API
changes
* vala/valaclass.vala: make {get,set}_lower_case_csuffix methods private
* vala/valaenum.vala, vala/valaenumvalue.vala,
vala/valaexpressionstatement.vala, vala/valafield.vala,
vala/valaflags.vala, vala/valaflagsvalue.vala,
vala/valaforeachstatement.vala, vala/valaforstatement.vala: add
interface documentation, use implicit namespace specification
svn path=/trunk/; revision=72
Jürg Billeter [Sat, 8 Jul 2006 09:26:16 +0000 (09:26 +0000)]
adapt to Method API changes support signals, mark private signal handlers
2006-07-08 Jürg Billeter <j@bitron.ch>
* vala/parser.y: adapt to Method API changes
* vala/valasemanticanalyzer.vala: support signals, mark private signal
handlers as instance_last
* vala/valamemorymanager.vala: support signals
* vala/valacodegenerator.vala: support signals, methods with
instance_last
* vala/valaclass.vala: add get_type_id and get_marshaller_type_name
methods
* vala/valadatatype.vala: add get_marshaller_type_name method
* vala/valastruct.vala: move type_id attribute to CCode, support
marshaller_type_name attribute
* vala/valainterfacewriter.vala, vala/valamethod.vala,
vala/valastruct.vala, ccode/valaccodeexpression.vala,
ccode/valaccodenode.vala: add interface documentation, use implicit
namespace specification
* vala/valacallback.vala, vala/valasignal.vala: improve documentation
* ccode/valaccodecastexpression.vala: type cast in C code
* ccode/Makefile.am: update
* tests/test-018.vala: test signals
* tests/Makefile.am: update
* vapi/glib-2.0.vala: add type_id and marshaller_type_name attributes
svn path=/trunk/; revision=71
Jürg Billeter [Fri, 7 Jul 2006 15:13:39 +0000 (15:13 +0000)]
support interfaces support lambda expressions with statement body add
2006-07-07 Jürg Billeter <j@bitron.ch>
* vala/valacodegenerator.vala, vala/valaclassregisterfunction.vala:
support interfaces
* vala/parser.y, vala/valasemanticanalyzer.vala,
vala/valalambdaexpression.vala: support lambda expressions with
statement body
* vala/valaclassregisterfunction.vala, vala/valaemptystatement.vala,
vala/valainterface.vala, vala/valainterfaceregisterfunction.vala,
vala/valatyperegisterfunction.vala: add interface documentation, use
implicit namespace specification
* tests/test-015.vala: test lambda expressions with statement body
* tests/test-017.vala: test interfaces
* tests/Makefile.am: update
svn path=/trunk/; revision=70
Jürg Billeter [Fri, 7 Jul 2006 08:17:47 +0000 (08:17 +0000)]
add interface documentation, use implicit namespace specification
2006-07-07 Jürg Billeter <j@bitron.ch>
* vala/valaconstructor.vala, vala/valacontinuestatement.vala,
vala/valadeclarationstatement.vala, vala/valadestructor.vala: add
interface documentation, use implicit namespace specification
svn path=/trunk/; revision=69
Jürg Billeter [Fri, 7 Jul 2006 07:56:56 +0000 (07:56 +0000)]
use continue statements to decrease indentation levels add interface
2006-07-07 Jürg Billeter <j@bitron.ch>
* vala/valacodecontext.vala: use continue statements to decrease
indentation levels
* vala/valasymbolbuilder.vala, vala/valasymbolresolver.vala,
vala/valasemanticanalyzer.vala, vala/valamemorymanager.vala,
vala/valacodegenerator.vala, vala/valaconditionalexpression.vala,
vala/valaconstant.vala: add interface documentation, use implicit
namespace specification
* vala/valasemanticanalyzer.vala: check that if, while, for, and
conditional expression conditions are boolean
* vala/valaclass.vala: remove dummy accessor, breaks build with old
vala compiler
* compiler/valacompiler.vala: use implicit namespace specification
* tests/test-016.vala: test conditional expressions
* tests/Makefile.am: update
svn path=/trunk/; revision=68
Jürg Billeter [Thu, 6 Jul 2006 22:52:39 +0000 (22:52 +0000)]
add interface documentation, use implicit namespace specification adapt to
2006-07-07 Jürg Billeter <j@bitron.ch>
* vala/valacodecontext.vala: add interface documentation, use implicit
namespace specification
* vala/valasymbolbuilder.vala, vala/valasymbolresolver.vala,
vala/valasemanticanalyzer.vala: adapt to change in CodeContext
svn path=/trunk/; revision=67
Jürg Billeter [Thu, 6 Jul 2006 22:02:17 +0000 (22:02 +0000)]
merge SimpleName into MemberAccess adapt to change in Class support
2006-07-06 Jürg Billeter <j@bitron.ch>
* vala/parser.y, vala/valacodevisitor.vala, vala/valasymbolbuilder.vala,
vala/valasemanticanalyzer.vala, vala/valamemorymanager.vala,
vala/valacodegenerator.vala, vala/valatypereference.vala, vala/vala.h,
vala/Makefile.am: merge SimpleName into MemberAccess
* vala/valasymbolresolver.vala, vala/valainterfacewriter.vala: adapt to
change in Class
* vala/valasemanticanalyzer.vala: support non-static lambda expressions
and lambda expressions without return values
* vala/valacodegenerator.vala: support conditional expressions, support
lambda expressions as signal handlers, support read-only and
write-only properties
* vala/valacodevisitor.vala, vala/valamemorymanager.vala,
vala/valaassignment.vala: visit at beginning and end
* vala/valacallback.vala: add instance property
* vala/valasignal.vala: add get_callback method
* vala/valacastexpression.vala, vala/valacharacterliteral.vala,
vala/valaclass.vala, vala/valamemberaccess.vala, vala/valasignal.vala:
add interface documentation, use implicit namespace specification
svn path=/trunk/; revision=66
Jürg Billeter [Wed, 5 Jul 2006 14:49:34 +0000 (14:49 +0000)]
don't pass parameter list to lambda expression contructor support static
2006-07-05 Jürg Billeter <j@bitron.ch>
* vala/parser.y: don't pass parameter list to lambda expression
contructor
* vala/valasemanticanalyzer.vala, vala/valamemorymanager.vala,
vala/valacodegenerator.vala: support static lambda expressions and
nested methods
* vala/valainvocationexpression.vala: visit call node before visiting
begin of invocation expression
* vala/valaformalparameter.vala, vala/valalambdaexpression.vala: add
interface documentation, use implicit namespace specification
* vala/valamethod.vala: allow nested methods
* tests/test-015.vala: test lambda expressions
* tests/Makefile.am: update
svn path=/trunk/; revision=65
Jürg Billeter [Tue, 4 Jul 2006 20:42:41 +0000 (20:42 +0000)]
support implicit namespace specification in callback declaration support
2006-07-04 Jürg Billeter <j@bitron.ch>
* vala/parser.y: support implicit namespace specification in callback
declaration
* vala/valasemanticanalyzer.vala, vala/valamemorymanager.vala,
vala/valacodegenerator.vala: support callbacks
* vala/valaassignment.vala, vala/valabinaryexpression.vala: improve
documentation
* vala/valabooleanliteral.vala, vala/valabreakstatement.vala,
vala/valacallback.vala: add interface documentation, use implicit
namespace specification
* vala/valacallback.vala: add matches_method method, mark as
non-reference type
* ccode/valaccodetypedefinition.vala: replace typedef_name by
declarator, add interface documentation, use implicit namespace
specification
* tests/test-013.vala: test break
* tests/test-014.vala: test callback
* tests/Makefile.am: update
svn path=/trunk/; revision=64
Jürg Billeter [Tue, 4 Jul 2006 09:40:30 +0000 (09:40 +0000)]
add interface documentation, use implicit namespace specification test
2006-07-04 Jürg Billeter <j@bitron.ch>
* vala/valablock.vala: add interface documentation, use implicit
namespace specification
* tests/test-011.vala: test binary expressions
* tests/test-012.vala: test blocks
* configure.ac, Makefile.am, tests/Makefile.am: distribute tests
svn path=/trunk/; revision=63
Jürg Billeter [Tue, 4 Jul 2006 08:43:43 +0000 (08:43 +0000)]
add interface documentation, use implicit namespace specification
2006-07-04 Jürg Billeter <j@bitron.ch>
* vala/valacodevisitor.vala, vala/valaattributeprocessor.vala,
vala/valabinaryexpression.vala: add interface documentation, use
implicit namespace specification
* vala/valaassignment.vala, vala/valaattribute.vala: documentation
corrections
svn path=/trunk/; revision=62
Jürg Billeter [Tue, 4 Jul 2006 06:43:15 +0000 (06:43 +0000)]
generate assignment with appropriate operator use implicit namespace
2006-07-04 Jürg Billeter <j@bitron.ch>
* vala/valacodegenerator.vala: generate assignment with appropriate
operator
* vala/valaassignment.vala: use implicit namespace specification
* ccode/valaccodeassignment.vala: support assignment operators , add
interface documentation, use implicit namespace specification
* tests/test-010.vala: test assignments
svn path=/trunk/; revision=61
Jürg Billeter [Mon, 3 Jul 2006 18:43:15 +0000 (18:43 +0000)]
support implicit namespace specification in struct, interface, enum, and
2006-07-03 Jürg Billeter <j@bitron.ch>
* vala/parser.y: support implicit namespace specification in struct,
interface, enum, and flags declaration
* vala/valasymbolbuilder.vala: report error when declaring non-static
namespace methods
* vala/valasemanticanalyzer.vala: analyze return statements
* vala/valacodegenerator.vala: correctly set GParamFlags for properties,
initialize static variables, add preconditions to property accessors,
support namespace methods
* vala/valaassignment.vala, vala/valaattribute.vala: add interface
documentation, use implicit namespace specification
* tests/test-001.vala, tests/test-002.vala, tests/test-003.vala,
tests/test-004.vala, tests/test-005.vala, tests/test-006.vala,
tests/test-007.vala, tests/test-008.vala, tests/test-009.vala:
update test cases to print test values
svn path=/trunk/; revision=60
Jürg Billeter [Fri, 30 Jun 2006 15:59:33 +0000 (15:59 +0000)]
use implicit namespace specification, reformat code
2006-06-30 Jürg Billeter <j@bitron.ch>
* vala/valacodenode.vala, vala/valadatatype.vala,
vala/valaexpression.vala: use implicit namespace specification,
reformat code
svn path=/trunk/; revision=59
Jürg Billeter [Fri, 30 Jun 2006 15:46:30 +0000 (15:46 +0000)]
support implicit namespace specification in class declaration
2006-06-30 Jürg Billeter <j@bitron.ch>
* vala/parser.y: support implicit namespace specification in class
declaration
svn path=/trunk/; revision=58
Jürg Billeter [Thu, 29 Jun 2006 21:22:17 +0000 (21:22 +0000)]
distinguish between ref_function/unref_function and
2006-06-29 Jürg Billeter <j@bitron.ch>
* vala/valacodegenerator.vala, vala/valaclass.vala,
vala/valadatatype.vala, vala/valastruct.vala: distinguish between
ref_function/unref_function and dup_function/free_function
* vala/valadatatype.vala: add interface documentation
* vapi/glib-2.0.vala: use dup_function attribute, keep ref_function for
compatibility
svn path=/trunk/; revision=57
Jürg Billeter [Thu, 29 Jun 2006 09:58:14 +0000 (09:58 +0000)]
add interface documentation
2006-06-29 Jürg Billeter <j@bitron.ch>
* vala/valacodenode.vala, vala/valaexpression.vala: add interface
documentation
svn path=/trunk/; revision=56
Jürg Billeter [Wed, 28 Jun 2006 09:55:26 +0000 (09:55 +0000)]
add private add_symbol helper method tiny refactoring of GObject lookup
2006-06-28 Jürg Billeter <j@bitron.ch>
* vala/valasymbolbuilder.vala: add private add_symbol helper method
* vala/valasymbolresolver.vala: tiny refactoring of GObject lookup
* vala/valasemanticanalyzer.vala: use get_parameters method of Callback
* vala/valacallback.vala, vala/valaintegerliteral.vala,
vala/valarealliteral.vala, vala/valastringliteral.vala: replace public
fields by properties / private fields, don't mark properties as
construct-only, use non-null types
* vala/valaattribute.vala, vala/valacodenode.vala,
vala/valaconstructor.vala, vala/valadatatype.vala,
vala/valadestructor.vala, vala/valaenumvalue.vala,
vala/valaexpression.vala, vala/valafield.vala,
vala/valaflagsvalue.vala, vala/valaformalparameter.vala,
vala/valaliteral.vala, vala/valalocalvariabledeclaration.vala,
vala/valamethod.vala, vala/valanamedargument.vala,
vala/valanamespace.vala, vala/valanamespacereference.vala,
vala/valaproperty.vala, vala/valapropertyaccessor.vala,
vala/valasignal.vala, vala/valastatement.vala,
vala/valatypeparameter.vala, vala/valatypereference.vala,
vala/valavariabledeclarator.vala: move source_reference to CodeNode
svn path=/trunk/; revision=55
Jürg Billeter [Wed, 28 Jun 2006 08:00:19 +0000 (08:00 +0000)]
move source_reference to Vala.Literal, use non-null types, don't mark
2006-06-28 Jürg Billeter <j@bitron.ch>
* vala/valabooleanliteral.vala, vala/valacharacterliteral.vala,
vala/valaintegerliteral.vala, vala/valaliteral.vala,
vala/valanullliteral.vala, vala/valarealliteral.vala,
vala/valastringliteral.vala: move source_reference to Vala.Literal,
use non-null types, don't mark properties as construct-only
svn path=/trunk/; revision=54
Jürg Billeter [Mon, 26 Jun 2006 13:54:03 +0000 (13:54 +0000)]
plug some memory leaks, adapt to Vala.Block changes replace public fields
2006-06-26 Jürg Billeter <j@bitron.ch>
* vala/parser.y: plug some memory leaks, adapt to Vala.Block changes
* vala/valaattribute.vala, vala/valabinaryexpression.vala,
vala/valablock.vala, vala/valabooleanexpression.vala,
vala/valabreakstatement.vala, vala/valaliteral.vala,
vala/valastatement.vala: replace public fields by properties / private
fields, don't mark properties as construct-only, use non-null types
* vala/valadatatype.vala: renamed from Vala.Type_ to Vala.DataType
* vala/valasymbolbuilder.vala, vala/valasymbolresolver.vala,
vala/valasemanticanalyzer.vala, vala/valacodegenerator.vala,
vala/valasourcefile.vala, vala/valacallback.vala, vala/valaclass.vala,
vala/valaclassregisterfunction.vala, vala/valaconstant.vala,
vala/valaenum.vala, vala/valaflags.vala, vala/valainstancecast.vala,
vala/valainterface.vala, vala/valainterfaceregisterfunction.vala,
vala/valamethod.vala, vala/valastruct.vala,
vala/valatypeparameter.vala, vala/valatypereference.vala,
vala/valatypergisterfunction.vala: adapt to renaming of Vala.Type_ to
Vala.DataType
* vala/Makefile.am: update
svn path=/trunk/; revision=53
Jürg Billeter [Thu, 22 Jun 2006 09:48:11 +0000 (09:48 +0000)]
don't mark properties as construct-only, use non-null types use non-null
2006-06-22 Jürg Billeter <j@bitron.ch>
* vala/valaassignment.vala: don't mark properties as construct-only,
use non-null types
* vala/valacodenode.vala: use non-null type
* vala/valaexpression.vala: replace public fields by properties
svn path=/trunk/; revision=52