Whitespace cleanup.
Patch by kareila.
diffs (366 lines):
diff -r c86af8486f8b -r 16228e6b3e02 cgi-bin/JSON/Converter.pm
--- a/cgi-bin/JSON/Converter.pm Sun Jan 17 16:35:40 2010 +0000
+++ b/cgi-bin/JSON/Converter.pm Sun Jan 17 17:01:53 2010 +0000
@@ -1,16 +1,3 @@
-# This code was forked from the LiveJournal project owned and operated
-# by Live Journal, Inc. The code has been modified and expanded by
-# Dreamwidth Studios, LLC. These files were originally licensed under
-# the terms of the license supplied by Live Journal, Inc, which can
-# currently be found at:
-#
-#
http://code.livejournal.org/trac/livejournal/browser/trunk/LICENSE-LiveJournal.txt
-#
-# In accordance with the original license, this code and all its
-# modifications are provided under the GNU General Public License.
-# A copy of that license can be found in the LICENSE file included as
-# part of this distribution.
-
package JSON::Converter;
##############################################################################
@@ -27,209 +14,209 @@ sub new {
sub objToJson {
- my $self = shift;
- my $obj = shift;
- my $opt = shift;
+ my $self = shift;
+ my $obj = shift;
+ my $opt = shift;
- local(@{$self}{qw/autoconv execcoderef skipinvalid/});
- local(@{$self}{qw/pretty indent delimiter/});
+ local(@{$self}{qw/autoconv execcoderef skipinvalid/});
+ local(@{$self}{qw/pretty indent delimiter/});
- $self->_initConvert($opt);
+ $self->_initConvert($opt);
- return $self->toJson($obj);
+ return $self->toJson($obj);
}
sub toJson {
- my ($self, $obj) = @_;
+ my ($self, $obj) = @_;
- if(ref($obj) eq 'HASH'){
- return $self->hashToJson($obj);
- }
- elsif(ref($obj) eq 'ARRAY'){
- return $self->arrayToJson($obj);
- }
- else{
- return;
- }
+ if(ref($obj) eq 'HASH'){
+ return $self->hashToJson($obj);
+ }
+ elsif(ref($obj) eq 'ARRAY'){
+ return $self->arrayToJson($obj);
+ }
+ else{
+ return;
+ }
}
sub hashToJson {
- my $self = shift;
- my $obj = shift;
- my ( $k, $v );
- my ( $pre, $post, %res );
+ my $self = shift;
+ my $obj = shift;
+ my ( $k, $v );
+ my ( $pre, $post, %res );
- ( $pre, $post ) = $self->_upIndent()
- if $self->{pretty};
+ ( $pre, $post ) = $self->_upIndent()
+ if $self->{pretty};
- if(grep { $_ == $obj } @{ $self->{_stack_myself} }){
- die "circle ref!";
- }
+ if(grep { $_ == $obj } @{ $self->{_stack_myself} }){
+ die "circle ref!";
+ }
- push @{ $self->{_stack_myself} },$obj;
+ push @{ $self->{_stack_myself} },$obj;
- for my $k (keys %$obj){
- my $v = $obj->{$k};
- if(ref($v) eq "HASH"){
- $res{$k} = $self->hashToJson($v);
- }
- elsif(ref($v) eq "ARRAY"){
- $res{$k} = $self->arrayToJson($v);
- }
- else{
- $res{$k} = $self->valueToJson($v);
- }
- }
+ for my $k (keys %$obj){
+ my $v = $obj->{$k};
+ if(ref($v) eq "HASH"){
+ $res{$k} = $self->hashToJson($v);
+ }
+ elsif(ref($v) eq "ARRAY"){
+ $res{$k} = $self->arrayToJson($v);
+ }
+ else{
+ $res{$k} = $self->valueToJson($v);
+ }
+ }
- pop @{ $self->{_stack_myself} };
+ pop @{ $self->{_stack_myself} };
- $self->_downIndent() if($self->{pretty});
+ $self->_downIndent() if($self->{pretty});
- if($self->{pretty}){
- my $del = $self->{_delstr};
- return "{$pre"
- . join(",$pre", map { _stringfy($_) . $del .$res{$_} } keys
%res)
- . "$post}";
- }
- else{
- return '{'. join(',',map { _stringfy($_) .':' .$res{$_} } keys
%res) .'}';
- }
+ if($self->{pretty}){
+ my $del = $self->{_delstr};
+ return "{$pre"
+ . join(",$pre", map { _stringfy($_) . $del .$res{$_} } keys %res)
+ . "$post}";
+ }
+ else{
+ return '{'. join(',',map { _stringfy($_) .':' .$res{$_} } keys %res)
.'}';
+ }
}
sub arrayToJson {
- my $self = shift;
- my $obj = shift;
- my ( $pre, $post, @res );
+ my $self = shift;
+ my $obj = shift;
+ my ( $pre, $post, @res );
- ( $pre, $post ) = $self->_upIndent()
- if $self->{pretty};
+ ( $pre, $post ) = $self->_upIndent()
+ if $self->{pretty};
- if(grep { $_ == $obj } @{ $self->{_stack_myself} }){
- die "circle ref!";
- }
+ if(grep { $_ == $obj } @{ $self->{_stack_myself} }){
+ die "circle ref!";
+ }
- push @{ $self->{_stack_myself} },$obj;
+ push @{ $self->{_stack_myself} },$obj;
- for my $v (@$obj){
- if(ref($v) eq "HASH"){
- push @res,$self->hashToJson($v);
- }
- elsif(ref($v) eq "ARRAY"){
- push @res,$self->arrayToJson($v);
- }
- else{
- push @res,$self->valueToJson($v);
- }
- }
+ for my $v (@$obj){
+ if(ref($v) eq "HASH"){
+ push @res,$self->hashToJson($v);
+ }
+ elsif(ref($v) eq "ARRAY"){
+ push @res,$self->arrayToJson($v);
+ }
+ else{
+ push @res,$self->valueToJson($v);
+ }
+ }
- pop @{ $self->{_stack_myself} };
+ pop @{ $self->{_stack_myself} };
- $self->_downIndent() if($self->{pretty});
+ $self->_downIndent() if($self->{pretty});
- if($self->{pretty}){
- return "[$pre" . join(",$pre" ,@res) . "$post]";
- }
- else{
- return '[' . join(',' ,@res) . ']';
- }
+ if($self->{pretty}){
+ return "[$pre" . join(",$pre" ,@res) . "$post]";
+ }
+ else{
+ return '[' . join(',' ,@res) . ']';
+ }
}
sub valueToJson {
- my $self = shift;
- my $value = shift;
+ my $self = shift;
+ my $value = shift;
- return 'null' if(!defined $value);
+ return 'null' if(!defined $value);
- if($self->{autoconv} and !ref($value)){
- return $value if($value =~ /^-?(?:0|[1-9][\d]*)(?:\.[\d]*)?$/);
- return 'true' if($value =~ /^true$/i);
- return 'false' if($value =~ /^false$/i);
- }
+ if($self->{autoconv} and !ref($value)){
+ return $value if($value =~ /^-?(?:0|[1-9][\d]*)(?:\.[\d]*)?$/);
+ return 'true' if($value =~ /^true$/i);
+ return 'false' if($value =~ /^false$/i);
+ }
- if(! ref($value) ){
- return _stringfy($value)
- }
- elsif($self->{execcoderef} and ref($value) eq 'CODE'){
- my $ret = $value->();
- return 'null' if(!defined $ret);
- return $self->toJson($ret) if(ref($ret));
- return _stringfy($ret);
- }
- elsif( ! UNIVERSAL::isa($value, 'JSON::NotString') ){
- die "Invalid value" unless($self->{skipinvalid});
- return 'null';
- }
+ if(! ref($value) ){
+ return _stringfy($value)
+ }
+ elsif($self->{execcoderef} and ref($value) eq 'CODE'){
+ my $ret = $value->();
+ return 'null' if(!defined $ret);
+ return $self->toJson($ret) if(ref($ret));
+ return _stringfy($ret);
+ }
+ elsif( ! UNIVERSAL::isa($value, 'JSON::NotString') ){
+ die "Invalid value" unless($self->{skipinvalid});
+ return 'null';
+ }
- return defined $value->{value} ? $value->{value} : 'null';
+ return defined $value->{value} ? $value->{value} : 'null';
}
%esc = (
- "\n" => '\n',
- "\r" => '\r',
- "\t" => '\t',
- "\f" => '\f',
- "\b" => '\b',
- "\"" => '\"',
- "\\" => '\\\\',
+ "\n" => '\n',
+ "\r" => '\r',
+ "\t" => '\t',
+ "\f" => '\f',
+ "\b" => '\b',
+ "\"" => '\"',
+ "\\" => '\\\\',
);
sub _stringfy {
- my $arg = shift;
- $arg =~ s/([\\"\n\r\t\f\b])/$esc{$1}/eg;
- $arg =~ s/([\x00-\x07\x0b\x0e-\x1f])/'\\u00' . unpack('H2',$1)/eg;
- return '"' . $arg . '"';
+ my $arg = shift;
+ $arg =~ s/([\\"\n\r\t\f\b])/$esc{$1}/eg;
+ $arg =~ s/([\x00-\x07\x0b\x0e-\x1f])/'\\u00' . unpack('H2',$1)/eg;
+ return '"' . $arg . '"';
}
##############################################################################
sub _initConvert {
- my $self = shift;
- my %opt;
- %opt = %{ $_[0] }
- if ( @_ > 0 and ref $_[0] eq 'HASH' );
+ my $self = shift;
+ my %opt;
+ %opt = %{ $_[0] }
+ if ( @_ > 0 and ref $_[0] eq 'HASH' );
- $self->{autoconv} = $JSON::AUTOCONVERT if(!defined
$self->{autoconv});
- $self->{execcoderef} = $JSON::ExecCoderef if(!defined
$self->{execcoderef});
- $self->{skipinvalid} = $JSON::SkipInvalid if(!defined
$self->{skipinvalid});
+ $self->{autoconv} = $JSON::AUTOCONVERT if(!defined $self->{autoconv});
+ $self->{execcoderef} = $JSON::ExecCoderef if(!defined
$self->{execcoderef});
+ $self->{skipinvalid} = $JSON::SkipInvalid if(!defined
$self->{skipinvalid});
- $self->{pretty} = $JSON::Pretty if(!defined $self->{pretty});
- $self->{indent} = $JSON::Indent if(!defined $self->{indent});
- $self->{delimiter} = $JSON::Delimiter if(!defined
$self->{delimiter});
+ $self->{pretty} = $JSON::Pretty if(!defined $self->{pretty});
+ $self->{indent} = $JSON::Indent if(!defined $self->{indent});
+ $self->{delimiter} = $JSON::Delimiter if(!defined $self->{delimiter});
- for my $name (qw/autoconv execcoderef skipinvalid pretty indent
delimiter/){
- $self->{$name} = $opt{$name} if(defined $opt{$name});
- }
+ for my $name (qw/autoconv execcoderef skipinvalid pretty indent
delimiter/){
+ $self->{$name} = $opt{$name} if(defined $opt{$name});
+ }
- $self->{_stack_myself} = [];
- $self->{indent_count} = 0;
+ $self->{_stack_myself} = [];
+ $self->{indent_count} = 0;
- $self->{_delstr} =
- $self->{delimiter} ? ($self->{delimiter} == 1 ? ': ' : ' : ') :
':';
+ $self->{_delstr} =
+ $self->{delimiter} ? ($self->{delimiter} == 1 ? ': ' : ' : ') : ':';
- $self;
+ $self;
}
sub _upIndent {
- my $self = shift;
- my $space = ' ' x $self->{indent};
- my ($pre,$post) = ('','');
+ my $self = shift;
+ my $space = ' ' x $self->{indent};
+ my ($pre,$post) = ('','');
- $post = "\n" . $space x $self->{indent_count};
+ $post = "\n" . $space x $self->{indent_count};
- $self->{indent_count}++;
+ $self->{indent_count}++;
- $pre = "\n" . $space x $self->{indent_count};
+ $pre = "\n" . $space x $self->{indent_count};
- return ($pre,$post);
+ return ($pre,$post);
}
_______________________________________________
dw-changelog mailing list
[email protected]
http://lists.dwscoalition.org/mailman/listinfo/dw-changelog