+our (%valopts_long, %valopts_short);
+our @rvalopts;
+
+sub defvalopt ($$$&) {
+ my ($long,$short,$val_re,$fn) = @_;
+ my $oi = { Long => $long, Short => $short, Re => $val_re, Fn => $fn };
+ $valopts_long{$long} = $oi;
+ $valopts_short{$short} = $oi;
+ # $fn subref should:
+ # do whatever assignemnt or thing it likes with $_[0]
+ # if the option should not be passed on to remote, @rvalopts=()
+}
+
+defvalopt '--since-version', '-v', '[^_]+|_', sub {
+ ($changes_since_version) = @_;
+};
+