Author: kwilliams
Date: Thu Mar 15 20:58:30 2007
New Revision: 9261

Modified:
   Module-Build/trunk/   (props changed)
   Module-Build/trunk/lib/Module/Build/YAML.pm

Log:
 [EMAIL PROTECTED]:  ken | 2007-03-15 22:14:50 -0500
 Simplify the YAML generation code


Modified: Module-Build/trunk/lib/Module/Build/YAML.pm
==============================================================================
--- Module-Build/trunk/lib/Module/Build/YAML.pm (original)
+++ Module-Build/trunk/lib/Module/Build/YAML.pm Thu Mar 15 20:58:30 2007
@@ -104,29 +104,22 @@
 sub _yaml_value {
   my ($value) = @_;
   # undefs become ~
-  if (! defined $value) {
-    return("~");
-  }
+  return '~' if not defined $value;
+
   # empty strings will become empty strings
-  elsif (! defined $value || $value eq "") {
-    return('""');
-  }
-  # quote and escape strings with special values
-  elsif ($value =~ /["'[EMAIL PROTECTED]&\*\(\)\{\}\[\]\|<>\?]/) {
-    if ($value !~ /['`~\n!\#^\&\*\(\)\{\}\[\]\|\?]/) {  # nothing but " or @ 
or < or > (email addresses)
-      return("'" . $value . "'");
-    }
-    else {
-      $value =~ s/\n/\\n/g;    # handle embedded newlines
-      $value =~ s/"/\\"/g;     # handle embedded quotes
-      return('"' . $value . '"');
-    }
-  }
+  return '""' if $value eq '';
+
   # allow simple scalars (without embedded quote chars) to be unquoted
   # (includes $%_+=-\;:,./)
-  else {
-    return($value);
-  }
+  return $value if $value !~ /["'[EMAIL PROTECTED]&\*\(\)\{\}\[\]\|<>\?]/;
+
+  # quote and escape strings with special values
+  return "'$value'"
+    if $value !~ /['`~\n!\#^\&\*\(\)\{\}\[\]\|\?]/;  # nothing but " or @ or < 
or > (email addresses)
+
+  $value =~ s/\n/\\n/g;    # handle embedded newlines
+  $value =~ s/"/\\"/g;     # handle embedded quotes
+  return qq{"$value"};
 }
 
 1;

Reply via email to