You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cordova.apache.org by an...@apache.org on 2013/03/04 20:32:52 UTC

[8/91] [abbrv] never ever check in node modules. baaad.

http://git-wip-us.apache.org/repos/asf/cordova-plugman/blob/19cf42ee/node_modules/xcode/lib/parser/pbxproj.js
----------------------------------------------------------------------
diff --git a/node_modules/xcode/lib/parser/pbxproj.js b/node_modules/xcode/lib/parser/pbxproj.js
deleted file mode 100644
index c56ace3..0000000
--- a/node_modules/xcode/lib/parser/pbxproj.js
+++ /dev/null
@@ -1,2659 +0,0 @@
-module.exports = (function(){
-  /* Generated by PEG.js 0.6.2 (http://pegjs.majda.cz/). */
-  
-  var result = {
-    /*
-     * Parses the input with a generated parser. If the parsing is successfull,
-     * returns a value explicitly or implicitly specified by the grammar from
-     * which the parser was generated (see |PEG.buildParser|). If the parsing is
-     * unsuccessful, throws |PEG.parser.SyntaxError| describing the error.
-     */
-    parse: function(input, startRule) {
-      var parseFunctions = {
-        "Alpha": parse_Alpha,
-        "Array": parse_Array,
-        "ArrayBody": parse_ArrayBody,
-        "ArrayEntry": parse_ArrayEntry,
-        "Assignment": parse_Assignment,
-        "AssignmentList": parse_AssignmentList,
-        "Char": parse_Char,
-        "CommentedArrayEntry": parse_CommentedArrayEntry,
-        "CommentedAssignment": parse_CommentedAssignment,
-        "CommentedIdentifier": parse_CommentedIdentifier,
-        "CommentedValue": parse_CommentedValue,
-        "DecimalValue": parse_DecimalValue,
-        "DelimitedSection": parse_DelimitedSection,
-        "DelimitedSectionBegin": parse_DelimitedSectionBegin,
-        "DelimitedSectionEnd": parse_DelimitedSectionEnd,
-        "Digit": parse_Digit,
-        "DoubleQuote": parse_DoubleQuote,
-        "EmptyArray": parse_EmptyArray,
-        "EmptyBody": parse_EmptyBody,
-        "EscapedQuote": parse_EscapedQuote,
-        "Identifier": parse_Identifier,
-        "InlineComment": parse_InlineComment,
-        "InlineCommentClose": parse_InlineCommentClose,
-        "InlineCommentOpen": parse_InlineCommentOpen,
-        "IntegerValue": parse_IntegerValue,
-        "LineTerminator": parse_LineTerminator,
-        "LiteralChar": parse_LiteralChar,
-        "LiteralString": parse_LiteralString,
-        "NewLine": parse_NewLine,
-        "NonLine": parse_NonLine,
-        "NonQuote": parse_NonQuote,
-        "NumberValue": parse_NumberValue,
-        "Object": parse_Object,
-        "OneLineString": parse_OneLineString,
-        "Project": parse_Project,
-        "QuotedBody": parse_QuotedBody,
-        "QuotedString": parse_QuotedString,
-        "SimpleArrayEntry": parse_SimpleArrayEntry,
-        "SimpleAssignment": parse_SimpleAssignment,
-        "SingleLineComment": parse_SingleLineComment,
-        "StringValue": parse_StringValue,
-        "Value": parse_Value,
-        "_": parse__,
-        "whitespace": parse_whitespace
-      };
-      
-      if (startRule !== undefined) {
-        if (parseFunctions[startRule] === undefined) {
-          throw new Error("Invalid rule name: " + quote(startRule) + ".");
-        }
-      } else {
-        startRule = "Project";
-      }
-      
-      var pos = 0;
-      var reportMatchFailures = true;
-      var rightmostMatchFailuresPos = 0;
-      var rightmostMatchFailuresExpected = [];
-      var cache = {};
-      
-      function padLeft(input, padding, length) {
-        var result = input;
-        
-        var padLength = length - input.length;
-        for (var i = 0; i < padLength; i++) {
-          result = padding + result;
-        }
-        
-        return result;
-      }
-      
-      function escape(ch) {
-        var charCode = ch.charCodeAt(0);
-        
-        if (charCode <= 0xFF) {
-          var escapeChar = 'x';
-          var length = 2;
-        } else {
-          var escapeChar = 'u';
-          var length = 4;
-        }
-        
-        return '\\' + escapeChar + padLeft(charCode.toString(16).toUpperCase(), '0', length);
-      }
-      
-      function quote(s) {
-        /*
-         * ECMA-262, 5th ed., 7.8.4: All characters may appear literally in a
-         * string literal except for the closing quote character, backslash,
-         * carriage return, line separator, paragraph separator, and line feed.
-         * Any character may appear in the form of an escape sequence.
-         */
-        return '"' + s
-          .replace(/\\/g, '\\\\')            // backslash
-          .replace(/"/g, '\\"')              // closing quote character
-          .replace(/\r/g, '\\r')             // carriage return
-          .replace(/\n/g, '\\n')             // line feed
-          .replace(/[\x80-\uFFFF]/g, escape) // non-ASCII characters
-          + '"';
-      }
-      
-      function matchFailed(failure) {
-        if (pos < rightmostMatchFailuresPos) {
-          return;
-        }
-        
-        if (pos > rightmostMatchFailuresPos) {
-          rightmostMatchFailuresPos = pos;
-          rightmostMatchFailuresExpected = [];
-        }
-        
-        rightmostMatchFailuresExpected.push(failure);
-      }
-      
-      function parse_Project() {
-        var cacheKey = 'Project@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var savedPos0 = pos;
-        var savedPos1 = pos;
-        var result10 = parse_SingleLineComment();
-        var result3 = result10 !== null ? result10 : '';
-        if (result3 !== null) {
-          var result9 = parse_InlineComment();
-          var result4 = result9 !== null ? result9 : '';
-          if (result4 !== null) {
-            var result5 = parse__();
-            if (result5 !== null) {
-              var result6 = parse_Object();
-              if (result6 !== null) {
-                var result7 = parse_NewLine();
-                if (result7 !== null) {
-                  var result8 = parse__();
-                  if (result8 !== null) {
-                    var result1 = [result3, result4, result5, result6, result7, result8];
-                  } else {
-                    var result1 = null;
-                    pos = savedPos1;
-                  }
-                } else {
-                  var result1 = null;
-                  pos = savedPos1;
-                }
-              } else {
-                var result1 = null;
-                pos = savedPos1;
-              }
-            } else {
-              var result1 = null;
-              pos = savedPos1;
-            }
-          } else {
-            var result1 = null;
-            pos = savedPos1;
-          }
-        } else {
-          var result1 = null;
-          pos = savedPos1;
-        }
-        var result2 = result1 !== null
-          ? (function(headComment, obj) {
-                  var proj = Object.create(null)
-                  proj.project = obj
-          
-                  if (headComment) {
-                      proj.headComment = headComment
-                  }
-          
-                  return proj;
-              })(result1[0], result1[3])
-          : null;
-        if (result2 !== null) {
-          var result0 = result2;
-        } else {
-          var result0 = null;
-          pos = savedPos0;
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_Object() {
-        var cacheKey = 'Object@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var savedPos0 = pos;
-        var savedPos1 = pos;
-        if (input.substr(pos, 1) === "{") {
-          var result3 = "{";
-          pos += 1;
-        } else {
-          var result3 = null;
-          if (reportMatchFailures) {
-            matchFailed("\"{\"");
-          }
-        }
-        if (result3 !== null) {
-          var result7 = parse_AssignmentList();
-          if (result7 !== null) {
-            var result4 = result7;
-          } else {
-            var result6 = parse_EmptyBody();
-            if (result6 !== null) {
-              var result4 = result6;
-            } else {
-              var result4 = null;;
-            };
-          }
-          if (result4 !== null) {
-            if (input.substr(pos, 1) === "}") {
-              var result5 = "}";
-              pos += 1;
-            } else {
-              var result5 = null;
-              if (reportMatchFailures) {
-                matchFailed("\"}\"");
-              }
-            }
-            if (result5 !== null) {
-              var result1 = [result3, result4, result5];
-            } else {
-              var result1 = null;
-              pos = savedPos1;
-            }
-          } else {
-            var result1 = null;
-            pos = savedPos1;
-          }
-        } else {
-          var result1 = null;
-          pos = savedPos1;
-        }
-        var result2 = result1 !== null
-          ? (function(obj) { return obj })(result1[1])
-          : null;
-        if (result2 !== null) {
-          var result0 = result2;
-        } else {
-          var result0 = null;
-          pos = savedPos0;
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_EmptyBody() {
-        var cacheKey = 'EmptyBody@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var savedPos0 = pos;
-        var result1 = parse__();
-        var result2 = result1 !== null
-          ? (function() { return Object.create(null) })()
-          : null;
-        if (result2 !== null) {
-          var result0 = result2;
-        } else {
-          var result0 = null;
-          pos = savedPos0;
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_AssignmentList() {
-        var cacheKey = 'AssignmentList@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var savedPos2 = pos;
-        var savedPos3 = pos;
-        var result12 = parse__();
-        if (result12 !== null) {
-          var result13 = parse_Assignment();
-          if (result13 !== null) {
-            var result14 = parse__();
-            if (result14 !== null) {
-              var result15 = [];
-              var result17 = parse_AssignmentList();
-              while (result17 !== null) {
-                result15.push(result17);
-                var result17 = parse_AssignmentList();
-              }
-              if (result15 !== null) {
-                var result16 = parse__();
-                if (result16 !== null) {
-                  var result10 = [result12, result13, result14, result15, result16];
-                } else {
-                  var result10 = null;
-                  pos = savedPos3;
-                }
-              } else {
-                var result10 = null;
-                pos = savedPos3;
-              }
-            } else {
-              var result10 = null;
-              pos = savedPos3;
-            }
-          } else {
-            var result10 = null;
-            pos = savedPos3;
-          }
-        } else {
-          var result10 = null;
-          pos = savedPos3;
-        }
-        var result11 = result10 !== null
-          ? (function(head, tail) { 
-                if (tail) return merge(head,tail)
-                else return head
-              })(result10[1], result10[3])
-          : null;
-        if (result11 !== null) {
-          var result9 = result11;
-        } else {
-          var result9 = null;
-          pos = savedPos2;
-        }
-        if (result9 !== null) {
-          var result0 = result9;
-        } else {
-          var savedPos0 = pos;
-          var savedPos1 = pos;
-          var result4 = parse__();
-          if (result4 !== null) {
-            var result5 = parse_DelimitedSection();
-            if (result5 !== null) {
-              var result6 = parse__();
-              if (result6 !== null) {
-                var result7 = [];
-                var result8 = parse_AssignmentList();
-                while (result8 !== null) {
-                  result7.push(result8);
-                  var result8 = parse_AssignmentList();
-                }
-                if (result7 !== null) {
-                  var result2 = [result4, result5, result6, result7];
-                } else {
-                  var result2 = null;
-                  pos = savedPos1;
-                }
-              } else {
-                var result2 = null;
-                pos = savedPos1;
-              }
-            } else {
-              var result2 = null;
-              pos = savedPos1;
-            }
-          } else {
-            var result2 = null;
-            pos = savedPos1;
-          }
-          var result3 = result2 !== null
-            ? (function(head, tail) {
-                  if (tail) return merge(head,tail)
-                  else return head
-                })(result2[1], result2[3])
-            : null;
-          if (result3 !== null) {
-            var result1 = result3;
-          } else {
-            var result1 = null;
-            pos = savedPos0;
-          }
-          if (result1 !== null) {
-            var result0 = result1;
-          } else {
-            var result0 = null;;
-          };
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_Assignment() {
-        var cacheKey = 'Assignment@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var result2 = parse_SimpleAssignment();
-        if (result2 !== null) {
-          var result0 = result2;
-        } else {
-          var result1 = parse_CommentedAssignment();
-          if (result1 !== null) {
-            var result0 = result1;
-          } else {
-            var result0 = null;;
-          };
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_SimpleAssignment() {
-        var cacheKey = 'SimpleAssignment@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var savedPos0 = pos;
-        var savedPos1 = pos;
-        var result3 = parse_Identifier();
-        if (result3 !== null) {
-          var result4 = parse__();
-          if (result4 !== null) {
-            if (input.substr(pos, 1) === "=") {
-              var result5 = "=";
-              pos += 1;
-            } else {
-              var result5 = null;
-              if (reportMatchFailures) {
-                matchFailed("\"=\"");
-              }
-            }
-            if (result5 !== null) {
-              var result6 = parse__();
-              if (result6 !== null) {
-                var result7 = parse_Value();
-                if (result7 !== null) {
-                  if (input.substr(pos, 1) === ";") {
-                    var result8 = ";";
-                    pos += 1;
-                  } else {
-                    var result8 = null;
-                    if (reportMatchFailures) {
-                      matchFailed("\";\"");
-                    }
-                  }
-                  if (result8 !== null) {
-                    var result1 = [result3, result4, result5, result6, result7, result8];
-                  } else {
-                    var result1 = null;
-                    pos = savedPos1;
-                  }
-                } else {
-                  var result1 = null;
-                  pos = savedPos1;
-                }
-              } else {
-                var result1 = null;
-                pos = savedPos1;
-              }
-            } else {
-              var result1 = null;
-              pos = savedPos1;
-            }
-          } else {
-            var result1 = null;
-            pos = savedPos1;
-          }
-        } else {
-          var result1 = null;
-          pos = savedPos1;
-        }
-        var result2 = result1 !== null
-          ? (function(id, val) { 
-                var result = Object.create(null);
-                result[id] = val
-                return result
-              })(result1[0], result1[4])
-          : null;
-        if (result2 !== null) {
-          var result0 = result2;
-        } else {
-          var result0 = null;
-          pos = savedPos0;
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_CommentedAssignment() {
-        var cacheKey = 'CommentedAssignment@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var savedPos2 = pos;
-        var savedPos3 = pos;
-        var result13 = parse_CommentedIdentifier();
-        if (result13 !== null) {
-          var result14 = parse__();
-          if (result14 !== null) {
-            if (input.substr(pos, 1) === "=") {
-              var result15 = "=";
-              pos += 1;
-            } else {
-              var result15 = null;
-              if (reportMatchFailures) {
-                matchFailed("\"=\"");
-              }
-            }
-            if (result15 !== null) {
-              var result16 = parse__();
-              if (result16 !== null) {
-                var result17 = parse_Value();
-                if (result17 !== null) {
-                  if (input.substr(pos, 1) === ";") {
-                    var result18 = ";";
-                    pos += 1;
-                  } else {
-                    var result18 = null;
-                    if (reportMatchFailures) {
-                      matchFailed("\";\"");
-                    }
-                  }
-                  if (result18 !== null) {
-                    var result11 = [result13, result14, result15, result16, result17, result18];
-                  } else {
-                    var result11 = null;
-                    pos = savedPos3;
-                  }
-                } else {
-                  var result11 = null;
-                  pos = savedPos3;
-                }
-              } else {
-                var result11 = null;
-                pos = savedPos3;
-              }
-            } else {
-              var result11 = null;
-              pos = savedPos3;
-            }
-          } else {
-            var result11 = null;
-            pos = savedPos3;
-          }
-        } else {
-          var result11 = null;
-          pos = savedPos3;
-        }
-        var result12 = result11 !== null
-          ? (function(commentedId, val) {
-                  var result = Object.create(null),
-                      commentKey = commentedId.id + '_comment';
-          
-                  result[commentedId.id] = val;
-                  result[commentKey] = commentedId[commentKey];
-                  return result;
-          
-              })(result11[0], result11[4])
-          : null;
-        if (result12 !== null) {
-          var result10 = result12;
-        } else {
-          var result10 = null;
-          pos = savedPos2;
-        }
-        if (result10 !== null) {
-          var result0 = result10;
-        } else {
-          var savedPos0 = pos;
-          var savedPos1 = pos;
-          var result4 = parse_Identifier();
-          if (result4 !== null) {
-            var result5 = parse__();
-            if (result5 !== null) {
-              if (input.substr(pos, 1) === "=") {
-                var result6 = "=";
-                pos += 1;
-              } else {
-                var result6 = null;
-                if (reportMatchFailures) {
-                  matchFailed("\"=\"");
-                }
-              }
-              if (result6 !== null) {
-                var result7 = parse__();
-                if (result7 !== null) {
-                  var result8 = parse_CommentedValue();
-                  if (result8 !== null) {
-                    if (input.substr(pos, 1) === ";") {
-                      var result9 = ";";
-                      pos += 1;
-                    } else {
-                      var result9 = null;
-                      if (reportMatchFailures) {
-                        matchFailed("\";\"");
-                      }
-                    }
-                    if (result9 !== null) {
-                      var result2 = [result4, result5, result6, result7, result8, result9];
-                    } else {
-                      var result2 = null;
-                      pos = savedPos1;
-                    }
-                  } else {
-                    var result2 = null;
-                    pos = savedPos1;
-                  }
-                } else {
-                  var result2 = null;
-                  pos = savedPos1;
-                }
-              } else {
-                var result2 = null;
-                pos = savedPos1;
-              }
-            } else {
-              var result2 = null;
-              pos = savedPos1;
-            }
-          } else {
-            var result2 = null;
-            pos = savedPos1;
-          }
-          var result3 = result2 !== null
-            ? (function(id, commentedVal) {
-                    var result = Object.create(null);
-                    result[id] = commentedVal.value;
-                    result[id + "_comment"] = commentedVal.comment;
-                    return result;
-                })(result2[0], result2[4])
-            : null;
-          if (result3 !== null) {
-            var result1 = result3;
-          } else {
-            var result1 = null;
-            pos = savedPos0;
-          }
-          if (result1 !== null) {
-            var result0 = result1;
-          } else {
-            var result0 = null;;
-          };
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_CommentedIdentifier() {
-        var cacheKey = 'CommentedIdentifier@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var savedPos0 = pos;
-        var savedPos1 = pos;
-        var result3 = parse_Identifier();
-        if (result3 !== null) {
-          var result4 = parse__();
-          if (result4 !== null) {
-            var result5 = parse_InlineComment();
-            if (result5 !== null) {
-              var result1 = [result3, result4, result5];
-            } else {
-              var result1 = null;
-              pos = savedPos1;
-            }
-          } else {
-            var result1 = null;
-            pos = savedPos1;
-          }
-        } else {
-          var result1 = null;
-          pos = savedPos1;
-        }
-        var result2 = result1 !== null
-          ? (function(id, comment) {
-                  var result = Object.create(null);
-                  result.id = id;
-                  result[id + "_comment"] = comment.trim();
-                  return result
-              })(result1[0], result1[2])
-          : null;
-        if (result2 !== null) {
-          var result0 = result2;
-        } else {
-          var result0 = null;
-          pos = savedPos0;
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_CommentedValue() {
-        var cacheKey = 'CommentedValue@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var savedPos0 = pos;
-        var savedPos1 = pos;
-        var result3 = parse_Value();
-        if (result3 !== null) {
-          var result4 = parse__();
-          if (result4 !== null) {
-            var result5 = parse_InlineComment();
-            if (result5 !== null) {
-              var result1 = [result3, result4, result5];
-            } else {
-              var result1 = null;
-              pos = savedPos1;
-            }
-          } else {
-            var result1 = null;
-            pos = savedPos1;
-          }
-        } else {
-          var result1 = null;
-          pos = savedPos1;
-        }
-        var result2 = result1 !== null
-          ? (function(literal, comment) {
-                  var result = Object.create(null)
-                  result.comment = comment.trim();
-                  result.value = literal.trim();
-                  return result;
-              })(result1[0], result1[2])
-          : null;
-        if (result2 !== null) {
-          var result0 = result2;
-        } else {
-          var result0 = null;
-          pos = savedPos0;
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_InlineComment() {
-        var cacheKey = 'InlineComment@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var savedPos0 = pos;
-        var savedPos1 = pos;
-        var result3 = parse_InlineCommentOpen();
-        if (result3 !== null) {
-          if (input.substr(pos).match(/^[^*]/) !== null) {
-            var result6 = input.charAt(pos);
-            pos++;
-          } else {
-            var result6 = null;
-            if (reportMatchFailures) {
-              matchFailed("[^*]");
-            }
-          }
-          if (result6 !== null) {
-            var result4 = [];
-            while (result6 !== null) {
-              result4.push(result6);
-              if (input.substr(pos).match(/^[^*]/) !== null) {
-                var result6 = input.charAt(pos);
-                pos++;
-              } else {
-                var result6 = null;
-                if (reportMatchFailures) {
-                  matchFailed("[^*]");
-                }
-              }
-            }
-          } else {
-            var result4 = null;
-          }
-          if (result4 !== null) {
-            var result5 = parse_InlineCommentClose();
-            if (result5 !== null) {
-              var result1 = [result3, result4, result5];
-            } else {
-              var result1 = null;
-              pos = savedPos1;
-            }
-          } else {
-            var result1 = null;
-            pos = savedPos1;
-          }
-        } else {
-          var result1 = null;
-          pos = savedPos1;
-        }
-        var result2 = result1 !== null
-          ? (function(body) { return body.join('') })(result1[1])
-          : null;
-        if (result2 !== null) {
-          var result0 = result2;
-        } else {
-          var result0 = null;
-          pos = savedPos0;
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_InlineCommentOpen() {
-        var cacheKey = 'InlineCommentOpen@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        if (input.substr(pos, 2) === "/*") {
-          var result0 = "/*";
-          pos += 2;
-        } else {
-          var result0 = null;
-          if (reportMatchFailures) {
-            matchFailed("\"/*\"");
-          }
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_InlineCommentClose() {
-        var cacheKey = 'InlineCommentClose@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        if (input.substr(pos, 2) === "*/") {
-          var result0 = "*/";
-          pos += 2;
-        } else {
-          var result0 = null;
-          if (reportMatchFailures) {
-            matchFailed("\"*/\"");
-          }
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_DelimitedSection() {
-        var cacheKey = 'DelimitedSection@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var savedPos0 = pos;
-        var savedPos1 = pos;
-        var result3 = parse_DelimitedSectionBegin();
-        if (result3 !== null) {
-          var result4 = parse__();
-          if (result4 !== null) {
-            var result9 = parse_AssignmentList();
-            if (result9 !== null) {
-              var result5 = result9;
-            } else {
-              var result8 = parse_EmptyBody();
-              if (result8 !== null) {
-                var result5 = result8;
-              } else {
-                var result5 = null;;
-              };
-            }
-            if (result5 !== null) {
-              var result6 = parse__();
-              if (result6 !== null) {
-                var result7 = parse_DelimitedSectionEnd();
-                if (result7 !== null) {
-                  var result1 = [result3, result4, result5, result6, result7];
-                } else {
-                  var result1 = null;
-                  pos = savedPos1;
-                }
-              } else {
-                var result1 = null;
-                pos = savedPos1;
-              }
-            } else {
-              var result1 = null;
-              pos = savedPos1;
-            }
-          } else {
-            var result1 = null;
-            pos = savedPos1;
-          }
-        } else {
-          var result1 = null;
-          pos = savedPos1;
-        }
-        var result2 = result1 !== null
-          ? (function(begin, fields) {
-                  var section = Object.create(null);
-                  section[begin.name] = fields
-          
-                  return section
-              })(result1[0], result1[2])
-          : null;
-        if (result2 !== null) {
-          var result0 = result2;
-        } else {
-          var result0 = null;
-          pos = savedPos0;
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_DelimitedSectionBegin() {
-        var cacheKey = 'DelimitedSectionBegin@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var savedPos0 = pos;
-        var savedPos1 = pos;
-        if (input.substr(pos, 9) === "/* Begin ") {
-          var result3 = "/* Begin ";
-          pos += 9;
-        } else {
-          var result3 = null;
-          if (reportMatchFailures) {
-            matchFailed("\"/* Begin \"");
-          }
-        }
-        if (result3 !== null) {
-          var result4 = parse_Identifier();
-          if (result4 !== null) {
-            if (input.substr(pos, 11) === " section */") {
-              var result5 = " section */";
-              pos += 11;
-            } else {
-              var result5 = null;
-              if (reportMatchFailures) {
-                matchFailed("\" section */\"");
-              }
-            }
-            if (result5 !== null) {
-              var result6 = parse_NewLine();
-              if (result6 !== null) {
-                var result1 = [result3, result4, result5, result6];
-              } else {
-                var result1 = null;
-                pos = savedPos1;
-              }
-            } else {
-              var result1 = null;
-              pos = savedPos1;
-            }
-          } else {
-            var result1 = null;
-            pos = savedPos1;
-          }
-        } else {
-          var result1 = null;
-          pos = savedPos1;
-        }
-        var result2 = result1 !== null
-          ? (function(sectionName) { return { name: sectionName } })(result1[1])
-          : null;
-        if (result2 !== null) {
-          var result0 = result2;
-        } else {
-          var result0 = null;
-          pos = savedPos0;
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_DelimitedSectionEnd() {
-        var cacheKey = 'DelimitedSectionEnd@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var savedPos0 = pos;
-        var savedPos1 = pos;
-        if (input.substr(pos, 7) === "/* End ") {
-          var result3 = "/* End ";
-          pos += 7;
-        } else {
-          var result3 = null;
-          if (reportMatchFailures) {
-            matchFailed("\"/* End \"");
-          }
-        }
-        if (result3 !== null) {
-          var result4 = parse_Identifier();
-          if (result4 !== null) {
-            if (input.substr(pos, 11) === " section */") {
-              var result5 = " section */";
-              pos += 11;
-            } else {
-              var result5 = null;
-              if (reportMatchFailures) {
-                matchFailed("\" section */\"");
-              }
-            }
-            if (result5 !== null) {
-              var result6 = parse_NewLine();
-              if (result6 !== null) {
-                var result1 = [result3, result4, result5, result6];
-              } else {
-                var result1 = null;
-                pos = savedPos1;
-              }
-            } else {
-              var result1 = null;
-              pos = savedPos1;
-            }
-          } else {
-            var result1 = null;
-            pos = savedPos1;
-          }
-        } else {
-          var result1 = null;
-          pos = savedPos1;
-        }
-        var result2 = result1 !== null
-          ? (function(sectionName) { return { name: sectionName } })(result1[1])
-          : null;
-        if (result2 !== null) {
-          var result0 = result2;
-        } else {
-          var result0 = null;
-          pos = savedPos0;
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_Array() {
-        var cacheKey = 'Array@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var savedPos0 = pos;
-        var savedPos1 = pos;
-        if (input.substr(pos, 1) === "(") {
-          var result3 = "(";
-          pos += 1;
-        } else {
-          var result3 = null;
-          if (reportMatchFailures) {
-            matchFailed("\"(\"");
-          }
-        }
-        if (result3 !== null) {
-          var result7 = parse_ArrayBody();
-          if (result7 !== null) {
-            var result4 = result7;
-          } else {
-            var result6 = parse_EmptyArray();
-            if (result6 !== null) {
-              var result4 = result6;
-            } else {
-              var result4 = null;;
-            };
-          }
-          if (result4 !== null) {
-            if (input.substr(pos, 1) === ")") {
-              var result5 = ")";
-              pos += 1;
-            } else {
-              var result5 = null;
-              if (reportMatchFailures) {
-                matchFailed("\")\"");
-              }
-            }
-            if (result5 !== null) {
-              var result1 = [result3, result4, result5];
-            } else {
-              var result1 = null;
-              pos = savedPos1;
-            }
-          } else {
-            var result1 = null;
-            pos = savedPos1;
-          }
-        } else {
-          var result1 = null;
-          pos = savedPos1;
-        }
-        var result2 = result1 !== null
-          ? (function(arr) { return arr })(result1[1])
-          : null;
-        if (result2 !== null) {
-          var result0 = result2;
-        } else {
-          var result0 = null;
-          pos = savedPos0;
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_EmptyArray() {
-        var cacheKey = 'EmptyArray@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var savedPos0 = pos;
-        var result1 = parse__();
-        var result2 = result1 !== null
-          ? (function() { return [] })()
-          : null;
-        if (result2 !== null) {
-          var result0 = result2;
-        } else {
-          var result0 = null;
-          pos = savedPos0;
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_ArrayBody() {
-        var cacheKey = 'ArrayBody@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var savedPos0 = pos;
-        var savedPos1 = pos;
-        var result3 = parse__();
-        if (result3 !== null) {
-          var result4 = parse_ArrayEntry();
-          if (result4 !== null) {
-            var result5 = parse__();
-            if (result5 !== null) {
-              var result8 = parse_ArrayBody();
-              var result6 = result8 !== null ? result8 : '';
-              if (result6 !== null) {
-                var result7 = parse__();
-                if (result7 !== null) {
-                  var result1 = [result3, result4, result5, result6, result7];
-                } else {
-                  var result1 = null;
-                  pos = savedPos1;
-                }
-              } else {
-                var result1 = null;
-                pos = savedPos1;
-              }
-            } else {
-              var result1 = null;
-              pos = savedPos1;
-            }
-          } else {
-            var result1 = null;
-            pos = savedPos1;
-          }
-        } else {
-          var result1 = null;
-          pos = savedPos1;
-        }
-        var result2 = result1 !== null
-          ? (function(head, tail) {
-                  if (tail) {
-                      tail.unshift(head);
-                      return tail;
-                  } else {
-                      return [head];
-                  }
-              })(result1[1], result1[3])
-          : null;
-        if (result2 !== null) {
-          var result0 = result2;
-        } else {
-          var result0 = null;
-          pos = savedPos0;
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_ArrayEntry() {
-        var cacheKey = 'ArrayEntry@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var result2 = parse_SimpleArrayEntry();
-        if (result2 !== null) {
-          var result0 = result2;
-        } else {
-          var result1 = parse_CommentedArrayEntry();
-          if (result1 !== null) {
-            var result0 = result1;
-          } else {
-            var result0 = null;;
-          };
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_SimpleArrayEntry() {
-        var cacheKey = 'SimpleArrayEntry@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var savedPos0 = pos;
-        var savedPos1 = pos;
-        var result3 = parse_Value();
-        if (result3 !== null) {
-          if (input.substr(pos, 1) === ",") {
-            var result4 = ",";
-            pos += 1;
-          } else {
-            var result4 = null;
-            if (reportMatchFailures) {
-              matchFailed("\",\"");
-            }
-          }
-          if (result4 !== null) {
-            var result1 = [result3, result4];
-          } else {
-            var result1 = null;
-            pos = savedPos1;
-          }
-        } else {
-          var result1 = null;
-          pos = savedPos1;
-        }
-        var result2 = result1 !== null
-          ? (function(val) { return val })(result1[0])
-          : null;
-        if (result2 !== null) {
-          var result0 = result2;
-        } else {
-          var result0 = null;
-          pos = savedPos0;
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_CommentedArrayEntry() {
-        var cacheKey = 'CommentedArrayEntry@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var savedPos0 = pos;
-        var savedPos1 = pos;
-        var result3 = parse_Value();
-        if (result3 !== null) {
-          var result4 = parse__();
-          if (result4 !== null) {
-            var result5 = parse_InlineComment();
-            if (result5 !== null) {
-              if (input.substr(pos, 1) === ",") {
-                var result6 = ",";
-                pos += 1;
-              } else {
-                var result6 = null;
-                if (reportMatchFailures) {
-                  matchFailed("\",\"");
-                }
-              }
-              if (result6 !== null) {
-                var result1 = [result3, result4, result5, result6];
-              } else {
-                var result1 = null;
-                pos = savedPos1;
-              }
-            } else {
-              var result1 = null;
-              pos = savedPos1;
-            }
-          } else {
-            var result1 = null;
-            pos = savedPos1;
-          }
-        } else {
-          var result1 = null;
-          pos = savedPos1;
-        }
-        var result2 = result1 !== null
-          ? (function(val, comment) {
-                  var result = Object.create(null);
-                  result.value = val.trim();
-                  result.comment = comment.trim();
-                  return result;
-              })(result1[0], result1[2])
-          : null;
-        if (result2 !== null) {
-          var result0 = result2;
-        } else {
-          var result0 = null;
-          pos = savedPos0;
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_Identifier() {
-        var cacheKey = 'Identifier@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var savedPos0 = pos;
-        if (input.substr(pos).match(/^[A-Za-z0-9_]/) !== null) {
-          var result5 = input.charAt(pos);
-          pos++;
-        } else {
-          var result5 = null;
-          if (reportMatchFailures) {
-            matchFailed("[A-Za-z0-9_]");
-          }
-        }
-        if (result5 !== null) {
-          var result3 = [];
-          while (result5 !== null) {
-            result3.push(result5);
-            if (input.substr(pos).match(/^[A-Za-z0-9_]/) !== null) {
-              var result5 = input.charAt(pos);
-              pos++;
-            } else {
-              var result5 = null;
-              if (reportMatchFailures) {
-                matchFailed("[A-Za-z0-9_]");
-              }
-            }
-          }
-        } else {
-          var result3 = null;
-        }
-        var result4 = result3 !== null
-          ? (function(id) { return id.join('') })(result3)
-          : null;
-        if (result4 !== null) {
-          var result2 = result4;
-        } else {
-          var result2 = null;
-          pos = savedPos0;
-        }
-        if (result2 !== null) {
-          var result0 = result2;
-        } else {
-          var result1 = parse_QuotedString();
-          if (result1 !== null) {
-            var result0 = result1;
-          } else {
-            var result0 = null;;
-          };
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_Value() {
-        var cacheKey = 'Value@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var result4 = parse_Object();
-        if (result4 !== null) {
-          var result0 = result4;
-        } else {
-          var result3 = parse_Array();
-          if (result3 !== null) {
-            var result0 = result3;
-          } else {
-            var result2 = parse_NumberValue();
-            if (result2 !== null) {
-              var result0 = result2;
-            } else {
-              var result1 = parse_StringValue();
-              if (result1 !== null) {
-                var result0 = result1;
-              } else {
-                var result0 = null;;
-              };
-            };
-          };
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_NumberValue() {
-        var cacheKey = 'NumberValue@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var result2 = parse_DecimalValue();
-        if (result2 !== null) {
-          var result0 = result2;
-        } else {
-          var result1 = parse_IntegerValue();
-          if (result1 !== null) {
-            var result0 = result1;
-          } else {
-            var result0 = null;;
-          };
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_DecimalValue() {
-        var cacheKey = 'DecimalValue@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var savedPos0 = pos;
-        var savedPos1 = pos;
-        var result3 = parse_IntegerValue();
-        if (result3 !== null) {
-          if (input.substr(pos, 1) === ".") {
-            var result4 = ".";
-            pos += 1;
-          } else {
-            var result4 = null;
-            if (reportMatchFailures) {
-              matchFailed("\".\"");
-            }
-          }
-          if (result4 !== null) {
-            var result5 = parse_IntegerValue();
-            if (result5 !== null) {
-              var result1 = [result3, result4, result5];
-            } else {
-              var result1 = null;
-              pos = savedPos1;
-            }
-          } else {
-            var result1 = null;
-            pos = savedPos1;
-          }
-        } else {
-          var result1 = null;
-          pos = savedPos1;
-        }
-        var result2 = result1 !== null
-          ? (function(decimal) { 
-                  // store decimals as strings
-                  // as JS doesn't differentiate bw strings and numbers
-                  return decimal.join('')
-              })(result1)
-          : null;
-        if (result2 !== null) {
-          var result0 = result2;
-        } else {
-          var result0 = null;
-          pos = savedPos0;
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_IntegerValue() {
-        var cacheKey = 'IntegerValue@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var savedPos0 = pos;
-        var savedPos1 = pos;
-        var savedPos3 = pos;
-        var savedReportMatchFailuresVar1 = reportMatchFailures;
-        reportMatchFailures = false;
-        var result8 = parse_Alpha();
-        reportMatchFailures = savedReportMatchFailuresVar1;
-        if (result8 === null) {
-          var result3 = '';
-        } else {
-          var result3 = null;
-          pos = savedPos3;
-        }
-        if (result3 !== null) {
-          var result7 = parse_Digit();
-          if (result7 !== null) {
-            var result4 = [];
-            while (result7 !== null) {
-              result4.push(result7);
-              var result7 = parse_Digit();
-            }
-          } else {
-            var result4 = null;
-          }
-          if (result4 !== null) {
-            var savedPos2 = pos;
-            var savedReportMatchFailuresVar0 = reportMatchFailures;
-            reportMatchFailures = false;
-            var result6 = parse_Alpha();
-            reportMatchFailures = savedReportMatchFailuresVar0;
-            if (result6 === null) {
-              var result5 = '';
-            } else {
-              var result5 = null;
-              pos = savedPos2;
-            }
-            if (result5 !== null) {
-              var result1 = [result3, result4, result5];
-            } else {
-              var result1 = null;
-              pos = savedPos1;
-            }
-          } else {
-            var result1 = null;
-            pos = savedPos1;
-          }
-        } else {
-          var result1 = null;
-          pos = savedPos1;
-        }
-        var result2 = result1 !== null
-          ? (function(number) { return parseInt(number.join(''), 10) })(result1[1])
-          : null;
-        if (result2 !== null) {
-          var result0 = result2;
-        } else {
-          var result0 = null;
-          pos = savedPos0;
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_StringValue() {
-        var cacheKey = 'StringValue@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var result2 = parse_QuotedString();
-        if (result2 !== null) {
-          var result0 = result2;
-        } else {
-          var result1 = parse_LiteralString();
-          if (result1 !== null) {
-            var result0 = result1;
-          } else {
-            var result0 = null;;
-          };
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_QuotedString() {
-        var cacheKey = 'QuotedString@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var savedPos0 = pos;
-        var savedPos1 = pos;
-        var result3 = parse_DoubleQuote();
-        if (result3 !== null) {
-          var result4 = parse_QuotedBody();
-          if (result4 !== null) {
-            var result5 = parse_DoubleQuote();
-            if (result5 !== null) {
-              var result1 = [result3, result4, result5];
-            } else {
-              var result1 = null;
-              pos = savedPos1;
-            }
-          } else {
-            var result1 = null;
-            pos = savedPos1;
-          }
-        } else {
-          var result1 = null;
-          pos = savedPos1;
-        }
-        var result2 = result1 !== null
-          ? (function(str) { return '"' + str + '"' })(result1[1])
-          : null;
-        if (result2 !== null) {
-          var result0 = result2;
-        } else {
-          var result0 = null;
-          pos = savedPos0;
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_QuotedBody() {
-        var cacheKey = 'QuotedBody@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var savedPos0 = pos;
-        var result3 = parse_NonQuote();
-        if (result3 !== null) {
-          var result1 = [];
-          while (result3 !== null) {
-            result1.push(result3);
-            var result3 = parse_NonQuote();
-          }
-        } else {
-          var result1 = null;
-        }
-        var result2 = result1 !== null
-          ? (function(str) { return str.join('') })(result1)
-          : null;
-        if (result2 !== null) {
-          var result0 = result2;
-        } else {
-          var result0 = null;
-          pos = savedPos0;
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_NonQuote() {
-        var cacheKey = 'NonQuote@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var result7 = parse_EscapedQuote();
-        if (result7 !== null) {
-          var result0 = result7;
-        } else {
-          var savedPos0 = pos;
-          var savedPos1 = pos;
-          var savedPos2 = pos;
-          var savedReportMatchFailuresVar0 = reportMatchFailures;
-          reportMatchFailures = false;
-          var result6 = parse_DoubleQuote();
-          reportMatchFailures = savedReportMatchFailuresVar0;
-          if (result6 === null) {
-            var result4 = '';
-          } else {
-            var result4 = null;
-            pos = savedPos2;
-          }
-          if (result4 !== null) {
-            if (input.length > pos) {
-              var result5 = input.charAt(pos);
-              pos++;
-            } else {
-              var result5 = null;
-              if (reportMatchFailures) {
-                matchFailed('any character');
-              }
-            }
-            if (result5 !== null) {
-              var result2 = [result4, result5];
-            } else {
-              var result2 = null;
-              pos = savedPos1;
-            }
-          } else {
-            var result2 = null;
-            pos = savedPos1;
-          }
-          var result3 = result2 !== null
-            ? (function(char) { return char })(result2[1])
-            : null;
-          if (result3 !== null) {
-            var result1 = result3;
-          } else {
-            var result1 = null;
-            pos = savedPos0;
-          }
-          if (result1 !== null) {
-            var result0 = result1;
-          } else {
-            var result0 = null;;
-          };
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_EscapedQuote() {
-        var cacheKey = 'EscapedQuote@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var savedPos0 = pos;
-        var savedPos1 = pos;
-        if (input.substr(pos, 1) === "\\") {
-          var result3 = "\\";
-          pos += 1;
-        } else {
-          var result3 = null;
-          if (reportMatchFailures) {
-            matchFailed("\"\\\\\"");
-          }
-        }
-        if (result3 !== null) {
-          var result4 = parse_DoubleQuote();
-          if (result4 !== null) {
-            var result1 = [result3, result4];
-          } else {
-            var result1 = null;
-            pos = savedPos1;
-          }
-        } else {
-          var result1 = null;
-          pos = savedPos1;
-        }
-        var result2 = result1 !== null
-          ? (function() { return '\\"' })()
-          : null;
-        if (result2 !== null) {
-          var result0 = result2;
-        } else {
-          var result0 = null;
-          pos = savedPos0;
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_LiteralString() {
-        var cacheKey = 'LiteralString@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var savedPos0 = pos;
-        var result3 = parse_LiteralChar();
-        if (result3 !== null) {
-          var result1 = [];
-          while (result3 !== null) {
-            result1.push(result3);
-            var result3 = parse_LiteralChar();
-          }
-        } else {
-          var result1 = null;
-        }
-        var result2 = result1 !== null
-          ? (function(literal) { return literal.join('') })(result1)
-          : null;
-        if (result2 !== null) {
-          var result0 = result2;
-        } else {
-          var result0 = null;
-          pos = savedPos0;
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_LiteralChar() {
-        var cacheKey = 'LiteralChar@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var savedPos0 = pos;
-        var savedPos1 = pos;
-        var savedPos3 = pos;
-        var savedReportMatchFailuresVar1 = reportMatchFailures;
-        reportMatchFailures = false;
-        var result7 = parse_InlineCommentOpen();
-        reportMatchFailures = savedReportMatchFailuresVar1;
-        if (result7 === null) {
-          var result3 = '';
-        } else {
-          var result3 = null;
-          pos = savedPos3;
-        }
-        if (result3 !== null) {
-          var savedPos2 = pos;
-          var savedReportMatchFailuresVar0 = reportMatchFailures;
-          reportMatchFailures = false;
-          var result6 = parse_LineTerminator();
-          reportMatchFailures = savedReportMatchFailuresVar0;
-          if (result6 === null) {
-            var result4 = '';
-          } else {
-            var result4 = null;
-            pos = savedPos2;
-          }
-          if (result4 !== null) {
-            if (input.substr(pos).match(/^[^;,\n]/) !== null) {
-              var result5 = input.charAt(pos);
-              pos++;
-            } else {
-              var result5 = null;
-              if (reportMatchFailures) {
-                matchFailed("[^;,\\n]");
-              }
-            }
-            if (result5 !== null) {
-              var result1 = [result3, result4, result5];
-            } else {
-              var result1 = null;
-              pos = savedPos1;
-            }
-          } else {
-            var result1 = null;
-            pos = savedPos1;
-          }
-        } else {
-          var result1 = null;
-          pos = savedPos1;
-        }
-        var result2 = result1 !== null
-          ? (function(char) { return char })(result1[2])
-          : null;
-        if (result2 !== null) {
-          var result0 = result2;
-        } else {
-          var result0 = null;
-          pos = savedPos0;
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_SingleLineComment() {
-        var cacheKey = 'SingleLineComment@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var savedPos0 = pos;
-        var savedPos1 = pos;
-        if (input.substr(pos, 2) === "//") {
-          var result3 = "//";
-          pos += 2;
-        } else {
-          var result3 = null;
-          if (reportMatchFailures) {
-            matchFailed("\"//\"");
-          }
-        }
-        if (result3 !== null) {
-          var result4 = parse__();
-          if (result4 !== null) {
-            var result5 = parse_OneLineString();
-            if (result5 !== null) {
-              var result6 = parse_NewLine();
-              if (result6 !== null) {
-                var result1 = [result3, result4, result5, result6];
-              } else {
-                var result1 = null;
-                pos = savedPos1;
-              }
-            } else {
-              var result1 = null;
-              pos = savedPos1;
-            }
-          } else {
-            var result1 = null;
-            pos = savedPos1;
-          }
-        } else {
-          var result1 = null;
-          pos = savedPos1;
-        }
-        var result2 = result1 !== null
-          ? (function(contents) { return contents })(result1[2])
-          : null;
-        if (result2 !== null) {
-          var result0 = result2;
-        } else {
-          var result0 = null;
-          pos = savedPos0;
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_OneLineString() {
-        var cacheKey = 'OneLineString@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var savedPos0 = pos;
-        var result1 = [];
-        var result3 = parse_NonLine();
-        while (result3 !== null) {
-          result1.push(result3);
-          var result3 = parse_NonLine();
-        }
-        var result2 = result1 !== null
-          ? (function(contents) { return contents.join('') })(result1)
-          : null;
-        if (result2 !== null) {
-          var result0 = result2;
-        } else {
-          var result0 = null;
-          pos = savedPos0;
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_Digit() {
-        var cacheKey = 'Digit@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        if (input.substr(pos).match(/^[0-9]/) !== null) {
-          var result0 = input.charAt(pos);
-          pos++;
-        } else {
-          var result0 = null;
-          if (reportMatchFailures) {
-            matchFailed("[0-9]");
-          }
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_Alpha() {
-        var cacheKey = 'Alpha@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        if (input.substr(pos).match(/^[A-Za-z]/) !== null) {
-          var result0 = input.charAt(pos);
-          pos++;
-        } else {
-          var result0 = null;
-          if (reportMatchFailures) {
-            matchFailed("[A-Za-z]");
-          }
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_DoubleQuote() {
-        var cacheKey = 'DoubleQuote@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        if (input.substr(pos, 1) === "\"") {
-          var result0 = "\"";
-          pos += 1;
-        } else {
-          var result0 = null;
-          if (reportMatchFailures) {
-            matchFailed("\"\\\"\"");
-          }
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse__() {
-        var cacheKey = '_@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        var savedReportMatchFailures = reportMatchFailures;
-        reportMatchFailures = false;
-        var result0 = [];
-        var result1 = parse_whitespace();
-        while (result1 !== null) {
-          result0.push(result1);
-          var result1 = parse_whitespace();
-        }
-        reportMatchFailures = savedReportMatchFailures;
-        if (reportMatchFailures && result0 === null) {
-          matchFailed("whitespace");
-        }
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_whitespace() {
-        var cacheKey = 'whitespace@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var result2 = parse_NewLine();
-        if (result2 !== null) {
-          var result0 = result2;
-        } else {
-          if (input.substr(pos).match(/^[	 ]/) !== null) {
-            var result1 = input.charAt(pos);
-            pos++;
-          } else {
-            var result1 = null;
-            if (reportMatchFailures) {
-              matchFailed("[	 ]");
-            }
-          }
-          if (result1 !== null) {
-            var result0 = result1;
-          } else {
-            var result0 = null;;
-          };
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_NonLine() {
-        var cacheKey = 'NonLine@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var savedPos0 = pos;
-        var savedPos1 = pos;
-        var savedPos2 = pos;
-        var savedReportMatchFailuresVar0 = reportMatchFailures;
-        reportMatchFailures = false;
-        var result5 = parse_NewLine();
-        reportMatchFailures = savedReportMatchFailuresVar0;
-        if (result5 === null) {
-          var result3 = '';
-        } else {
-          var result3 = null;
-          pos = savedPos2;
-        }
-        if (result3 !== null) {
-          var result4 = parse_Char();
-          if (result4 !== null) {
-            var result1 = [result3, result4];
-          } else {
-            var result1 = null;
-            pos = savedPos1;
-          }
-        } else {
-          var result1 = null;
-          pos = savedPos1;
-        }
-        var result2 = result1 !== null
-          ? (function(char) { return char })(result1[1])
-          : null;
-        if (result2 !== null) {
-          var result0 = result2;
-        } else {
-          var result0 = null;
-          pos = savedPos0;
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_LineTerminator() {
-        var cacheKey = 'LineTerminator@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        var result2 = parse_NewLine();
-        if (result2 !== null) {
-          var result0 = result2;
-        } else {
-          if (input.substr(pos, 1) === ";") {
-            var result1 = ";";
-            pos += 1;
-          } else {
-            var result1 = null;
-            if (reportMatchFailures) {
-              matchFailed("\";\"");
-            }
-          }
-          if (result1 !== null) {
-            var result0 = result1;
-          } else {
-            var result0 = null;;
-          };
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_NewLine() {
-        var cacheKey = 'NewLine@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        if (input.substr(pos).match(/^[\n\r]/) !== null) {
-          var result0 = input.charAt(pos);
-          pos++;
-        } else {
-          var result0 = null;
-          if (reportMatchFailures) {
-            matchFailed("[\\n\\r]");
-          }
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function parse_Char() {
-        var cacheKey = 'Char@' + pos;
-        var cachedResult = cache[cacheKey];
-        if (cachedResult) {
-          pos = cachedResult.nextPos;
-          return cachedResult.result;
-        }
-        
-        
-        if (input.length > pos) {
-          var result0 = input.charAt(pos);
-          pos++;
-        } else {
-          var result0 = null;
-          if (reportMatchFailures) {
-            matchFailed('any character');
-          }
-        }
-        
-        
-        
-        cache[cacheKey] = {
-          nextPos: pos,
-          result:  result0
-        };
-        return result0;
-      }
-      
-      function buildErrorMessage() {
-        function buildExpected(failuresExpected) {
-          failuresExpected.sort();
-          
-          var lastFailure = null;
-          var failuresExpectedUnique = [];
-          for (var i = 0; i < failuresExpected.length; i++) {
-            if (failuresExpected[i] !== lastFailure) {
-              failuresExpectedUnique.push(failuresExpected[i]);
-              lastFailure = failuresExpected[i];
-            }
-          }
-          
-          switch (failuresExpectedUnique.length) {
-            case 0:
-              return 'end of input';
-            case 1:
-              return failuresExpectedUnique[0];
-            default:
-              return failuresExpectedUnique.slice(0, failuresExpectedUnique.length - 1).join(', ')
-                + ' or '
-                + failuresExpectedUnique[failuresExpectedUnique.length - 1];
-          }
-        }
-        
-        var expected = buildExpected(rightmostMatchFailuresExpected);
-        var actualPos = Math.max(pos, rightmostMatchFailuresPos);
-        var actual = actualPos < input.length
-          ? quote(input.charAt(actualPos))
-          : 'end of input';
-        
-        return 'Expected ' + expected + ' but ' + actual + ' found.';
-      }
-      
-      function computeErrorPosition() {
-        /*
-         * The first idea was to use |String.split| to break the input up to the
-         * error position along newlines and derive the line and column from
-         * there. However IE's |split| implementation is so broken that it was
-         * enough to prevent it.
-         */
-        
-        var line = 1;
-        var column = 1;
-        var seenCR = false;
-        
-        for (var i = 0; i <  rightmostMatchFailuresPos; i++) {
-          var ch = input.charAt(i);
-          if (ch === '\n') {
-            if (!seenCR) { line++; }
-            column = 1;
-            seenCR = false;
-          } else if (ch === '\r' | ch === '\u2028' || ch === '\u2029') {
-            line++;
-            column = 1;
-            seenCR = true;
-          } else {
-            column++;
-            seenCR = false;
-          }
-        }
-        
-        return { line: line, column: column };
-      }
-      
-      
-      
-        function merge(hash, secondHash) {
-      
-            secondHash = secondHash[0]
-      
-            for(var i in secondHash)
-      
-                hash[i] = secondHash[i]
-      
-    
-      
-            return hash;
-      
-        }
-      
-    
-      
-      var result = parseFunctions[startRule]();
-      
-      /*
-       * The parser is now in one of the following three states:
-       *
-       * 1. The parser successfully parsed the whole input.
-       *
-       *    - |result !== null|
-       *    - |pos === input.length|
-       *    - |rightmostMatchFailuresExpected| may or may not contain something
-       *
-       * 2. The parser successfully parsed only a part of the input.
-       *
-       *    - |result !== null|
-       *    - |pos < input.length|
-       *    - |rightmostMatchFailuresExpected| may or may not contain something
-       *
-       * 3. The parser did not successfully parse any part of the input.
-       *
-       *   - |result === null|
-       *   - |pos === 0|
-       *   - |rightmostMatchFailuresExpected| contains at least one failure
-       *
-       * All code following this comment (including called functions) must
-       * handle these states.
-       */
-      if (result === null || pos !== input.length) {
-        var errorPosition = computeErrorPosition();
-        throw new this.SyntaxError(
-          buildErrorMessage(),
-          errorPosition.line,
-          errorPosition.column
-        );
-      }
-      
-      return result;
-    },
-    
-    /* Returns the parser source code. */
-    toSource: function() { return this._source; }
-  };
-  
-  /* Thrown when a parser encounters a syntax error. */
-  
-  result.SyntaxError = function(message, line, column) {
-    this.name = 'SyntaxError';
-    this.message = message;
-    this.line = line;
-    this.column = column;
-  };
-  
-  result.SyntaxError.prototype = Error.prototype;
-  
-  return result;
-})();

http://git-wip-us.apache.org/repos/asf/cordova-plugman/blob/19cf42ee/node_modules/xcode/lib/parser/pbxproj.pegjs
----------------------------------------------------------------------
diff --git a/node_modules/xcode/lib/parser/pbxproj.pegjs b/node_modules/xcode/lib/parser/pbxproj.pegjs
deleted file mode 100644
index 4f9c884..0000000
--- a/node_modules/xcode/lib/parser/pbxproj.pegjs
+++ /dev/null
@@ -1,256 +0,0 @@
-{
-    function merge(hash, secondHash) {
-        secondHash = secondHash[0]
-        for(var i in secondHash)
-            hash[i] = secondHash[i]
-
-        return hash;
-    }
-}
-
-/*
- *  Project: point of entry from pbxproj file
- */
-Project
-  = headComment:SingleLineComment? InlineComment? _ obj:Object NewLine _
-    {
-        var proj = Object.create(null)
-        proj.project = obj
-
-        if (headComment) {
-            proj.headComment = headComment
-        }
-
-        return proj;
-    }
-
-/*
- *  Object: basic hash data structure with Assignments
- */
-Object
-  = "{" obj:(AssignmentList / EmptyBody) "}"
-    { return obj }
-
-EmptyBody
-  = _
-    { return Object.create(null) }
-
-AssignmentList
-  = _ head:Assignment _ tail:AssignmentList* _
-    { 
-      if (tail) return merge(head,tail)
-      else return head
-    }
-    / _ head:DelimitedSection _ tail:AssignmentList*
-    {
-      if (tail) return merge(head,tail)
-      else return head
-    }
-
-/*
- *  Assignments
- *  can be simple "key = value"
- *  or commented "key /* real key * / = value"
- */
-Assignment
-  = SimpleAssignment / CommentedAssignment
-
-SimpleAssignment
-  = id:Identifier _ "=" _ val:Value ";"
-    { 
-      var result = Object.create(null);
-      result[id] = val
-      return result
-    }
-
-CommentedAssignment
-  = commentedId:CommentedIdentifier _ "=" _ val:Value ";"
-    {
-        var result = Object.create(null),
-            commentKey = commentedId.id + '_comment';
-
-        result[commentedId.id] = val;
-        result[commentKey] = commentedId[commentKey];
-        return result;
-
-    }
-    /
-    id:Identifier _ "=" _ commentedVal:CommentedValue ";"
-    {
-        var result = Object.create(null);
-        result[id] = commentedVal.value;
-        result[id + "_comment"] = commentedVal.comment;
-        return result;
-    }
-
-CommentedIdentifier
-  = id:Identifier _ comment:InlineComment
-    {
-        var result = Object.create(null);
-        result.id = id;
-        result[id + "_comment"] = comment.trim();
-        return result
-    }
-
-CommentedValue
-  = literal:Value _ comment:InlineComment
-    {
-        var result = Object.create(null)
-        result.comment = comment.trim();
-        result.value = literal.trim();
-        return result;
-    }
-
-InlineComment
-  = InlineCommentOpen body:[^*]+ InlineCommentClose
-    { return body.join('') }
-
-InlineCommentOpen
-  = "/*"
-
-InlineCommentClose
-  = "*/"
-
-/*
- *  DelimitedSection - ad hoc project structure pbxproj files use
- */
-DelimitedSection
-  = begin:DelimitedSectionBegin _ fields:(AssignmentList / EmptyBody) _ DelimitedSectionEnd
-    {
-        var section = Object.create(null);
-        section[begin.name] = fields
-
-        return section
-    }
-
-DelimitedSectionBegin
-  = "/* Begin " sectionName:Identifier " section */" NewLine
-    { return { name: sectionName } }
-
-DelimitedSectionEnd
-  = "/* End " sectionName:Identifier " section */" NewLine
-    { return { name: sectionName } }
-
-/*
- * Arrays: lists of values, possible wth comments
- */
-Array
-  = "(" arr:(ArrayBody / EmptyArray ) ")" { return arr }
-
-EmptyArray
-  = _ { return [] }
-
-ArrayBody
-  = _ head:ArrayEntry _ tail:ArrayBody? _
-    {
-        if (tail) {
-            tail.unshift(head);
-            return tail;
-        } else {
-            return [head];
-        }
-    }
-
-ArrayEntry
-  = SimpleArrayEntry / CommentedArrayEntry
-
-SimpleArrayEntry
-  = val:Value "," { return val }
-
-CommentedArrayEntry
-  = val:Value _ comment:InlineComment ","
-    {
-        var result = Object.create(null);
-        result.value = val.trim();
-        result.comment = comment.trim();
-        return result;
-    }
-
-/*
- *  Identifiers and Values
- */
-Identifier
-  = id:[A-Za-z0-9_]+ { return id.join('') }
-  / QuotedString
-
-Value
-  = Object / Array / NumberValue / StringValue
-
-NumberValue
-  = DecimalValue / IntegerValue
-
-DecimalValue
-  = decimal:(IntegerValue "." IntegerValue)
-    { 
-        // store decimals as strings
-        // as JS doesn't differentiate bw strings and numbers
-        return decimal.join('')
-    }
-
-IntegerValue
-  = !Alpha number:Digit+ !Alpha
-    { return parseInt(number.join(''), 10) }
-
-StringValue
- = QuotedString / LiteralString
-
-QuotedString
- = DoubleQuote str:QuotedBody DoubleQuote { return '"' + str + '"' }
-
-QuotedBody
- = str:NonQuote+ { return str.join('') }
-
-NonQuote
-  = EscapedQuote / !DoubleQuote char:. { return char }
-
-EscapedQuote
-  = "\\" DoubleQuote { return '\\"' }
-
-LiteralString
-  = literal:LiteralChar+ { return literal.join('') }
-
-LiteralChar
-  = !InlineCommentOpen !LineTerminator char:[^;,\n]
-    { return char }
-
-/*
- * SingleLineComment - used for the encoding comment
- */
-SingleLineComment
-  = "//" _ contents:OneLineString NewLine
-    { return contents }
-
-OneLineString
-  = contents:NonLine*
-    { return contents.join('') }
-
-/*
- *  Simple character checking rules
- */
-Digit
-  = [0-9]
-
-Alpha
-  = [A-Za-z]
-
-DoubleQuote
-  = '"'
-
-_ "whitespace"
-  = whitespace*
-
-whitespace
-  = NewLine / [\t ]
-
-NonLine
-  = !NewLine char:Char
-    { return char }
-
-LineTerminator
-  = NewLine / ";"
-
-NewLine
-    = [\n\r]
-
-Char
-  = .

http://git-wip-us.apache.org/repos/asf/cordova-plugman/blob/19cf42ee/node_modules/xcode/lib/pbxFile.js
----------------------------------------------------------------------
diff --git a/node_modules/xcode/lib/pbxFile.js b/node_modules/xcode/lib/pbxFile.js
deleted file mode 100644
index 17dc9f1..0000000
--- a/node_modules/xcode/lib/pbxFile.js
+++ /dev/null
@@ -1,81 +0,0 @@
-var path = require('path'),
-    M_EXTENSION = /[.]m$/, SOURCE_FILE = 'sourcecode.c.objc',
-    H_EXTENSION = /[.]h$/, HEADER_FILE = 'sourcecode.c.h',
-    BUNDLE_EXTENSION = /[.]bundle$/, BUNDLE = '"wrapper.plug-in"',
-    XIB_EXTENSION = /[.]xib$/, XIB_FILE = 'file.xib',
-    DYLIB_EXTENSION = /[.]dylib$/, DYLIB = '"compiled.mach-o.dylib"',
-    FRAMEWORK_EXTENSION = /[.]framework/, FRAMEWORK = 'wrapper.framework',
-    DEFAULT_SOURCE_TREE = '"<group>"',
-    DEFAULT_FILE_ENCODING = 4;
-
-function detectLastType(path) {
-    if (M_EXTENSION.test(path))
-        return SOURCE_FILE;
-
-    if (H_EXTENSION.test(path))
-        return HEADER_FILE;
-
-    if (BUNDLE_EXTENSION.test(path))
-        return BUNDLE;
-
-    if (XIB_EXTENSION.test(path))
-        return XIB_FILE;
-
-    if (FRAMEWORK_EXTENSION.test(path))
-        return FRAMEWORK;
-
-    if (DYLIB_EXTENSION.test(path))
-        return DYLIB;
-
-    // dunno
-    return 'unknown';
-}
-
-function fileEncoding(file) {
-    if (file.lastType != BUNDLE) {
-        return DEFAULT_FILE_ENCODING;
-    }
-}
-
-function defaultSourceTree(file) {
-    if (file.lastType == DYLIB || file.lastType == FRAMEWORK) {
-        return 'SDKROOT';
-    } else {
-        return DEFAULT_SOURCE_TREE;
-    }
-}
-
-function correctPath(file, filepath) {
-    if (file.lastType == FRAMEWORK) {
-        return 'System/Library/Frameworks/' + filepath;
-    } else if (file.lastType == DYLIB) {
-        return 'usr/lib/' + filepath;
-    } else {
-        return filepath;
-    }
-}
-
-function correctGroup(file) {
-    if (file.lastType == SOURCE_FILE) {
-        return 'Sources';
-    } else if (file.lastType == DYLIB) {
-        return 'Frameworks';
-    } else {
-        return 'Resources';
-    }
-}
-
-function pbxFile(filepath, opt) {
-    var opt = opt || {};
-
-    this.lastType = opt.lastType || detectLastType(filepath);
-
-    this.path = correctPath(this, filepath);
-    this.basename = path.basename(filepath);
-    this.group = correctGroup(this);
-
-    this.sourceTree = opt.sourceTree || defaultSourceTree(this);
-    this.fileEncoding = opt.fileEncoding || fileEncoding(this);
-}
-
-module.exports = pbxFile;