diff options
author | Hans Petter <hansp@src.gnome.org> | 2003-09-12 06:04:44 +0800 |
---|---|---|
committer | Hans Petter <hansp@src.gnome.org> | 2003-09-12 06:04:44 +0800 |
commit | 697761cc337aa77a47140c8df50ed84bc25e23f6 (patch) | |
tree | b785830f72e9938cceaa016a419c7b6d9892bada /libical/scripts/mkderivedvalues.pl | |
parent | 733d77e657516f9a59b5c1a7b62acb87b03ec86f (diff) | |
download | gsoc2013-evolution-697761cc337aa77a47140c8df50ed84bc25e23f6.tar gsoc2013-evolution-697761cc337aa77a47140c8df50ed84bc25e23f6.tar.gz gsoc2013-evolution-697761cc337aa77a47140c8df50ed84bc25e23f6.tar.bz2 gsoc2013-evolution-697761cc337aa77a47140c8df50ed84bc25e23f6.tar.lz gsoc2013-evolution-697761cc337aa77a47140c8df50ed84bc25e23f6.tar.xz gsoc2013-evolution-697761cc337aa77a47140c8df50ed84bc25e23f6.tar.zst gsoc2013-evolution-697761cc337aa77a47140c8df50ed84bc25e23f6.zip |
Import new libical from mainline HEAD and make appropriate changes to
Evolution.
svn path=/trunk/; revision=22538
Diffstat (limited to 'libical/scripts/mkderivedvalues.pl')
-rwxr-xr-x | libical/scripts/mkderivedvalues.pl | 33 |
1 files changed, 20 insertions, 13 deletions
diff --git a/libical/scripts/mkderivedvalues.pl b/libical/scripts/mkderivedvalues.pl index 5009419eac..308a2c8ac0 100755 --- a/libical/scripts/mkderivedvalues.pl +++ b/libical/scripts/mkderivedvalues.pl @@ -24,11 +24,18 @@ if ($opt_i) { open(IN,$opt_i) || die "Can't open input file $opt_i"; while(<IN>){ - print; - } -} + if (/<insert_code_here>/){ + insert_code(); + } else { + print; + } + + } +} +sub insert_code +{ # Map type names to the value in the icalvalue_impl data union */ %union_map = ( @@ -122,7 +129,8 @@ if($opt_c){ # print out the value to string map - print "static struct icalvalue_kind_map value_map[]={\n"; + my $count = scalar(keys %h) + 1; + print "static struct icalvalue_kind_map value_map[$count]={\n"; foreach $value (keys %h) { @@ -157,10 +165,8 @@ foreach $value (keys %h) { if ($type =~ /char/){ $assign = "icalmemory_strdup(v);\n\n if (impl->data.v_string == 0){\n errno = ENOMEM;\n }\n"; - $check_arg = "icalerror_check_arg_rz( (value!=0),\"value\");"; } else { $assign = "v;"; - $check_arg = "icalerror_check_arg( (value!=0),\"value\");"; } my $union_data; @@ -196,10 +202,12 @@ void icalvalue_set_${lc}(icalvalue* value, $type v) {\ } - print "\n impl->data.v_$union_data = $assign \n }\n"; + print "\n\ + impl->data.v_$union_data = $assign \n\ + icalvalue_reset_kind(impl);\n}\n"; - print "$type\ icalvalue_get_${lc}(icalvalue* value)\ {\n\ - $check_arg\ + print "$type\ icalvalue_get_${lc}(const icalvalue* value)\ {\n\ + icalerror_check_arg( (value!=0),\"value\");\ icalerror_check_value_type(value, ICAL_${uc}_VALUE);\ return ((struct icalvalue_impl*)value)->data.v_${union_data};\n}\n"; @@ -208,7 +216,7 @@ void icalvalue_set_${lc}(icalvalue* value, $type v) {\ print "\n /* $value */ \ icalvalue* icalvalue_new_${lc}($type v); \ -$type icalvalue_get_${lc}(icalvalue* value); \ +$type icalvalue_get_${lc}(const icalvalue* value); \ void icalvalue_set_${lc}(icalvalue* value, ${type} v);\n\n"; } @@ -220,6 +228,5 @@ if ($opt_h){ print "#endif /*ICALVALUE_H*/\n"; } - - __END__ - + +} |