parameters: (self, value)
return_statement: return '"' + _escaped.sub(self._EncodeTransform, value) + '"'
docstring: Encodes a string to be placed in the project file output, mimicing
      Xcode behavior.
docstring_summary: Encodes a string to be placed in the project file output, mimicing
      Xcode behavior.
docstring_tokens: Encodes a string to be placed in the project file output mimicing Xcode behavior .
function: def _EncodeString(self, value):
      """Encodes a string to be placed in the project file output, mimicing
      Xcode behavior.
      """
  
      # Use quotation marks when any character outside of the range A-Z, a-z, 0-9,
      # $ (dollar sign), . (period), and _ (underscore) is present.  Also use
      # quotation marks to represent empty strings.
      #
      # Escape " (double-quote) and \ (backslash) by preceding them with a
      # backslash.
      #
      # Some characters below the printable ASCII range are encoded specially:
      #     7 ^G BEL is encoded as "\a"
      #     8 ^H BS  is encoded as "\b"
      #    11 ^K VT  is encoded as "\v"
      #    12 ^L NP  is encoded as "\f"
      #   127 ^? DEL is passed through as-is without escaping
      #  - In PBXFileReference and PBXBuildFile objects:
      #     9 ^I HT  is passed through as-is without escaping
      #    10 ^J NL  is passed through as-is without escaping
      #    13 ^M CR  is passed through as-is without escaping
      #  - In other objects:
      #     9 ^I HT  is encoded as "\t"
      #    10 ^J NL  is encoded as "\n"
      #    13 ^M CR  is encoded as "\n" rendering it indistinguishable from
      #              10 ^J NL
      # All other characters within the ASCII control character range (0 through
      # 31 inclusive) are encoded as "\U001f" referring to the Unicode code point
      # in hexadecimal.  For example, character 14 (^N SO) is encoded as "\U000e".
      # Characters above the ASCII range are passed through to the output encoded
      # as UTF-8 without any escaping.  These mappings are contained in the
      # class' _encode_transforms list.
  
      if _unquoted.search(value) and not _quoted.search(value):
        return value
  
      return '"' + _escaped.sub(self._EncodeTransform, value) + '"'
function_tokens: def _EncodeString ( self , value ) : # Use quotation marks when any character outside of the range A-Z, a-z, 0-9, # $ (dollar sign), . (period), and _ (underscore) is present.  Also use # quotation marks to represent empty strings. # # Escape " (double-quote) and \ (backslash) by preceding them with a # backslash. # # Some characters below the printable ASCII range are encoded specially: #     7 ^G BEL is encoded as "\a" #     8 ^H BS  is encoded as "\b" #    11 ^K VT  is encoded as "\v" #    12 ^L NP  is encoded as "\f" #   127 ^? DEL is passed through as-is without escaping #  - In PBXFileReference and PBXBuildFile objects: #     9 ^I HT  is passed through as-is without escaping #    10 ^J NL  is passed through as-is without escaping #    13 ^M CR  is passed through as-is without escaping #  - In other objects: #     9 ^I HT  is encoded as "\t" #    10 ^J NL  is encoded as "\n" #    13 ^M CR  is encoded as "\n" rendering it indistinguishable from #              10 ^J NL # All other characters within the ASCII control character range (0 through # 31 inclusive) are encoded as "\U001f" referring to the Unicode code point # in hexadecimal.  For example, character 14 (^N SO) is encoded as "\U000e". # Characters above the ASCII range are passed through to the output encoded # as UTF-8 without any escaping.  These mappings are contained in the # class' _encode_transforms list. if _unquoted . search ( value ) and not _quoted . search ( value ) : return value return '"' + _escaped . sub ( self . _EncodeTransform , value ) + '"'