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
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
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
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
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
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
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
* vala/scanner.l, vala/parser.y, vala/valasemanticanalyzer.vala,
vala/valacodegenerator.vala, vala/valainterfacewriter.vala,
vala/valamemberaccessibility.vala: prepare to support protected
members
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
Jürg Billeter [Thu, 22 Jun 2006 09:24:58 +0000 (09:24 +0000)]
replace specialized interface member declarations by standard member
2006-06-22 Jürg Billeter <j@bitron.ch>
* vala/parser.y: replace specialized interface member declarations by
standard member declarations to allow non-abstract methods in
interfaces
* vala/valacodegenerator.vala: cast instance in property setter
invocations
Jürg Billeter [Thu, 22 Jun 2006 08:48:18 +0000 (08:48 +0000)]
support LAMBDA and CALLBACK support callbacks and lambda expressions add
2006-06-22 Jürg Billeter <j@bitron.ch>
* vala/scanner.l: support LAMBDA and CALLBACK
* vala/parser.y: support callbacks and lambda expressions
* vala/valacodevisitor.vala: add visit methods for callbacks and lambda
expressions
* vala/valasymbolbuilder.vala: use non-null parameter types, support
callbacks
* vala/valasemanticanalyzer.vala: partially support interface methods,
support callback invocations
* vala/valamemorymanager.vala: support callback invocations
* vala/valacodegenerator.vala: partially support interface methods
* vala/valacallback.vala: initial implementation
* vala/valacodenode.vala: replace public fields by properties
* vala/valaexpression.vala: add expected_type field
* vala/valainvocationexpression.vala: also visit at beginning
* vala/valalambdaexpression.vala
* vala/valanamespace.vala: support callbacks
* vala/vala.h: update
* vala/Makefile.am: update
Jürg Billeter [Sun, 18 Jun 2006 12:01:46 +0000 (12:01 +0000)]
support TYPEOF support typeof expressions, out ref parameters, and enum
2006-06-18 Jürg Billeter <j@bitron.ch>
* vala/scanner.l: support TYPEOF
* vala/parser.y: support typeof expressions, out ref parameters, and
enum attributes
* vala/valacodevisitor.vala: add visit method for typeof expressions
* vala/valaattributeprocessor.vala: use non-null parameter types,
support enums and properties
* vala/valasemanticanalyzer.vala: support floating references
* vala/valamemorymanager.vala: ignore signal connections
* vala/valacodegenerator.vala: reset temp variable id at beginning of
each file, fix out parameters, support properties without accessor
methods, support floating references, add typeof expression, support
static signal handlers
* vala/valaclass.vala: use default arguments
* vala/valaenum.vala: support cname, cprefix, and cheader_filename
attributes
* vala/valaenumvalue.vala: use Enum.get_cprefix ()
* vala/valamethod.vala: support FloatingReference attribute
* vala/valanamespace.vala: use default arguments
* vala/valaproperty.vala: support NoAccessorMethod attribute
* vala/valastruct.vala: support type_id
* vala/valatype.vala: add abstract get_type_id method
* vala/valatypeofexpression.vala
* vala/valatypereference.vala: add floating_reference property, correct
to_string method signature
* vala/vala.h: update
* vala/Makefile.am: update
* vapi/glib-2.0.vala: add GInitiallyUnowned
* vapi/gtk+-2.0.vala: start of a GTK+ binding
* vapi/pango.vala: start of a Pango binding
Jürg Billeter [Sat, 17 Jun 2006 15:36:46 +0000 (15:36 +0000)]
don't leak comment texts, support generic types with weak arguments plug
2006-06-17 Jürg Billeter <j@bitron.ch>
* vala/scanner.l: don't leak comment texts, support generic types with
weak arguments
* vala/parser.y: plug most memory leaks
* vala/valacodecontext.vala: work around memory management issues
* vala/valasourcefile.vala: break reference cycles
* vala/valasourcefilecycle.vala: break reference cycles
* vala/valasymbolbuilder.vala: store `this` and `value` parameters in
appropriate member node
* vala/valasymbolresolver.vala: break reference cycle
* vala/valasemanticanalyzer.vala: break reference cycle, promote local
variables with ownership transferring initializer, store foreach
variable declarator in statement object, assignments to properties
don't take value ownership, make null type checks behave well on
either side of a comparison
* vala/valamemorymanager.vala: add support for named arguments,
properties, and ellipsis parameter
* vala/valacodegenerator.vala: add dispose function, register properties
with static strings, don't leak strings when setting properties,
support freeing string arrays, support freeing lists with allocated
items, free local variables before return statements, free old value
on assignments
* vala/valainterfacewriter.vala: output more type reference information
* vala/valaforeachstatement.vala: reference variable_declarator
* vala/valaforstatement.vala: correct generic type arguments
* vala/valamethod.vala: break reference cycle
* vala/valaproperty.vala: reference this_parameter, add
get_canoncial_cconstant method
* vala/valapropertyaccessor.vala: reference value_parameter
* vala/valasimplename.vala: remove unneeded type_argument_list
parameter from constructor
* vala/valasourcereference.vala: let to_string transfer ownership
* vala/valastruct.vala: correct generic type argument
* vala/valasymbol.vala: improve memory management
* vala/valatype.vala: break reference cycles, let get_lower_case_cname
transfer ownership
* vala/valatypereference.vala: break reference cycle, use
type_argument_list
* vala/vala.h: add valaflags.h
* ccode/valaccodefunction.vala: work around missing list deep copy
* ccode/valaccodewriter.vala: don't manually free objects
* compiler/valacompiler.vala: enable memory management by default,
valac doesn't work anymore without memory management
* vapi/glib-2.0.vala: add memory management information
Jürg Billeter [Thu, 15 Jun 2006 21:29:22 +0000 (21:29 +0000)]
add local variables to block analyze local variable initializers free
2006-06-15 Jürg Billeter <j@bitron.ch>
* vala/valasemanticanalyzer.vala: add local variables to block
* vala/valamemorymanager.vala: analyze local variable initializers
* vala/valacodegenerator.vala: free local variables at end of block,
only free non-null variables, use some strong references due to memory
manager deficiencies
* vala/valablock.vala: use non-null parameter types, add local variable
declarators
* vala/valaenum.vala: let get_upper_case_cname transfer ownership
* vala/valastruct.vala: add free_function attribute
* ccode/valaccodewriter.vala: set freed values to null
* vapi/glib-2.0.vala: add free functions