]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
its all in the name...
authorJack Jansen <jack.jansen@cwi.nl>
Thu, 31 Aug 1995 13:43:08 +0000 (13:43 +0000)
committerJack Jansen <jack.jansen@cwi.nl>
Thu, 31 Aug 1995 13:43:08 +0000 (13:43 +0000)
Mac/Lib/toolbox/Metrowerks_Shell_Suite.py [new file with mode: 0644]

diff --git a/Mac/Lib/toolbox/Metrowerks_Shell_Suite.py b/Mac/Lib/toolbox/Metrowerks_Shell_Suite.py
new file mode 100644 (file)
index 0000000..6b9439e
--- /dev/null
@@ -0,0 +1,1171 @@
+"""Suite Metrowerks Shell Suite: Events supported by the Metrowerks Project Shell
+Level 1, version 1
+
+Generated from Sap:CodeWarrior6:Metrowerks C/C++:MW C/C++ PPC 1.2.2
+AETE/AEUT resource version 1/0, language 0, script 0
+"""
+
+import addpack
+addpack.addpack('Tools')
+addpack.addpack('bgen')
+addpack.addpack('ae')
+
+import aetools
+import MacOS
+
+_code = 'MMPR'
+
+_Enum_savo = {
+       'yes' : 'yes ', # Save changes
+       'no' : 'no  ',  # Do not save changes
+       'ask' : 'ask ', # Ask the user whether to save
+}
+
+_Enum_ErrT = {
+       'information' : 'ErIn', # 
+       'compiler_error' : 'ErCE',      # 
+       'compiler_warning' : 'ErCW',    # 
+       'definition' : 'ErDf',  # 
+       'linker_error' : 'ErLE',        # 
+       'linker_warning' : 'ErLW',      # 
+}
+
+_Enum_Mode = {
+       'ReadWrite' : 'RdWr',   # The file is open with read/write privileges
+       'ReadOnly' : 'Read',    # The file is open with read/only privileges
+       'CheckedOut_ReadWrite' : 'CkRW',        # The file is checked out with read/write privileges
+       'CheckedOut_ReadOnly' : 'CkRO', # The file is checked out with read/only privileges
+       'CheckedOut_ReadModify' : 'CkRM',       # The file is checked out with read/modify privileges
+       'Locked' : 'Lock',      # The file is locked on disk
+       'None' : 'None',        # The file is new
+}
+
+_Enum_SrcT = {
+       'source' : 'FTxt',      # A source file (.c, .cp, .p, etc).
+       'library' : 'FLib',     # An object code library.
+       'shared_library' : 'FShl',      # A shared library.
+       'resource' : 'FRes',    # A resource file.
+       'xcoff' : 'FXco',       # An XCOFF library.
+}
+
+class Metrowerks_Shell_Suite:
+
+       _argmap_Close_Window = {
+               'Saving' : 'savo',
+       }
+
+       def Close_Window(self, object, *arguments):
+               """Close Window: Close the windows showing the specified files
+               Required argument: The files to close
+               Keyword argument Saving: Whether to save changes to each file before closing its window
+               Keyword argument _attributes: AppleEvent attribute dictionary
+               """
+               _code = 'MMPR'
+               _subcode = 'ClsW'
+
+               if len(arguments) > 1:
+                       raise TypeError, 'Too many arguments'
+               if arguments:
+                       arguments = arguments[0]
+                       if type(arguments) <> type({}):
+                               raise TypeError, 'Must be a mapping'
+               else:
+                       arguments = {}
+               arguments['----'] = object
+
+               if arguments.has_key('_attributes'):
+                       attributes = arguments['_attributes']
+                       del arguments['_attributes']
+               else:
+                       attributes = {}
+
+               aetools.keysubst(arguments, self._argmap_Close_Window)
+               aetools.enumsubst(arguments, 'savo', _Enum_savo)
+
+               reply, arguments, attributes = self.send(_code, _subcode,
+                               arguments, attributes)
+               if arguments.has_key('errn'):
+                       raise MacOS.Error, aetools.decodeerror(arguments)
+               # XXXX Optionally decode result
+               if arguments.has_key('----'):
+                       return arguments['----']
+
+       _argmap_Add_Files = {
+               'To_Segment' : 'Segm',
+       }
+
+       def Add_Files(self, object, *arguments):
+               """Add Files: Add the specified file(s) to the current project
+               Required argument: List of files to add
+               Keyword argument To_Segment: Segment number into which to add the file(s)
+               Keyword argument _attributes: AppleEvent attribute dictionary
+               Returns: Error code for each file added
+               """
+               _code = 'MMPR'
+               _subcode = 'AddF'
+
+               if len(arguments) > 1:
+                       raise TypeError, 'Too many arguments'
+               if arguments:
+                       arguments = arguments[0]
+                       if type(arguments) <> type({}):
+                               raise TypeError, 'Must be a mapping'
+               else:
+                       arguments = {}
+               arguments['----'] = object
+
+               if arguments.has_key('_attributes'):
+                       attributes = arguments['_attributes']
+                       del arguments['_attributes']
+               else:
+                       attributes = {}
+
+               aetools.keysubst(arguments, self._argmap_Add_Files)
+
+               reply, arguments, attributes = self.send(_code, _subcode,
+                               arguments, attributes)
+               if arguments.has_key('errn'):
+                       raise MacOS.Error, aetools.decodeerror(arguments)
+               # XXXX Optionally decode result
+               if arguments.has_key('----'):
+                       return arguments['----']
+
+       def Remove_Files(self, object, *arguments):
+               """Remove Files: Remove the specified file(s) from the current project
+               Required argument: List of files to remove
+               Keyword argument _attributes: AppleEvent attribute dictionary
+               Returns: Error code for each file removed
+               """
+               _code = 'MMPR'
+               _subcode = 'RemF'
+
+               if len(arguments) > 1:
+                       raise TypeError, 'Too many arguments'
+               if arguments:
+                       arguments = arguments[0]
+                       if type(arguments) <> type({}):
+                               raise TypeError, 'Must be a mapping'
+               else:
+                       arguments = {}
+               arguments['----'] = object
+
+               if arguments.has_key('_attributes'):
+                       attributes = arguments['_attributes']
+                       del arguments['_attributes']
+               else:
+                       attributes = {}
+
+
+               reply, arguments, attributes = self.send(_code, _subcode,
+                               arguments, attributes)
+               if arguments.has_key('errn'):
+                       raise MacOS.Error, aetools.decodeerror(arguments)
+               # XXXX Optionally decode result
+               if arguments.has_key('----'):
+                       return arguments['----']
+
+       def Touch(self, object, *arguments):
+               """Touch: Touch the modification date of the specified file(s)
+               Required argument: List of files to compile
+               Keyword argument _attributes: AppleEvent attribute dictionary
+               Returns: Error code for each file touched
+               """
+               _code = 'MMPR'
+               _subcode = 'Toch'
+
+               if len(arguments) > 1:
+                       raise TypeError, 'Too many arguments'
+               if arguments:
+                       arguments = arguments[0]
+                       if type(arguments) <> type({}):
+                               raise TypeError, 'Must be a mapping'
+               else:
+                       arguments = {}
+               arguments['----'] = object
+
+               if arguments.has_key('_attributes'):
+                       attributes = arguments['_attributes']
+                       del arguments['_attributes']
+               else:
+                       attributes = {}
+
+
+               reply, arguments, attributes = self.send(_code, _subcode,
+                               arguments, attributes)
+               if arguments.has_key('errn'):
+                       raise MacOS.Error, aetools.decodeerror(arguments)
+               # XXXX Optionally decode result
+               if arguments.has_key('----'):
+                       return arguments['----']
+
+       _argmap_Check_Syntax = {
+               'ExternalEditor' : 'Errs',
+       }
+
+       def Check_Syntax(self, object, *arguments):
+               """Check Syntax: Check the syntax of the specified file(s)
+               Required argument: List of files to check the syntax of
+               Keyword argument ExternalEditor: Should the contents of the message window be returned to the caller?
+               Keyword argument _attributes: AppleEvent attribute dictionary
+               Returns: Errors for each file whose syntax was checked
+               """
+               _code = 'MMPR'
+               _subcode = 'Chek'
+
+               if len(arguments) > 1:
+                       raise TypeError, 'Too many arguments'
+               if arguments:
+                       arguments = arguments[0]
+                       if type(arguments) <> type({}):
+                               raise TypeError, 'Must be a mapping'
+               else:
+                       arguments = {}
+               arguments['----'] = object
+
+               if arguments.has_key('_attributes'):
+                       attributes = arguments['_attributes']
+                       del arguments['_attributes']
+               else:
+                       attributes = {}
+
+               aetools.keysubst(arguments, self._argmap_Check_Syntax)
+
+               reply, arguments, attributes = self.send(_code, _subcode,
+                               arguments, attributes)
+               if arguments.has_key('errn'):
+                       raise MacOS.Error, aetools.decodeerror(arguments)
+               # XXXX Optionally decode result
+               if arguments.has_key('----'):
+                       return arguments['----']
+
+       _argmap_Compile = {
+               'ExternalEditor' : 'Errs',
+       }
+
+       def Compile(self, object, *arguments):
+               """Compile: Compile the specified file(s)
+               Required argument: List of files to compile
+               Keyword argument ExternalEditor: Should the contents of the message window be returned to the caller?
+               Keyword argument _attributes: AppleEvent attribute dictionary
+               Returns: Errors for each file compiled
+               """
+               _code = 'MMPR'
+               _subcode = 'Comp'
+
+               if len(arguments) > 1:
+                       raise TypeError, 'Too many arguments'
+               if arguments:
+                       arguments = arguments[0]
+                       if type(arguments) <> type({}):
+                               raise TypeError, 'Must be a mapping'
+               else:
+                       arguments = {}
+               arguments['----'] = object
+
+               if arguments.has_key('_attributes'):
+                       attributes = arguments['_attributes']
+                       del arguments['_attributes']
+               else:
+                       attributes = {}
+
+               aetools.keysubst(arguments, self._argmap_Compile)
+
+               reply, arguments, attributes = self.send(_code, _subcode,
+                               arguments, attributes)
+               if arguments.has_key('errn'):
+                       raise MacOS.Error, aetools.decodeerror(arguments)
+               # XXXX Optionally decode result
+               if arguments.has_key('----'):
+                       return arguments['----']
+
+       _argmap_Precompile = {
+               'Saving_As' : 'Targ',
+               'ExternalEditor' : 'Errs',
+       }
+
+       def Precompile(self, object, *arguments):
+               """Precompile: Precompile the specified file to the specified destination file
+               Required argument: File to precompile
+               Keyword argument Saving_As: Destination file for precompiled header
+               Keyword argument ExternalEditor: Should the contents of the message window be returned to the caller?
+               Keyword argument _attributes: AppleEvent attribute dictionary
+               Returns: Errors for the precompiled file
+               """
+               _code = 'MMPR'
+               _subcode = 'PreC'
+
+               if len(arguments) > 1:
+                       raise TypeError, 'Too many arguments'
+               if arguments:
+                       arguments = arguments[0]
+                       if type(arguments) <> type({}):
+                               raise TypeError, 'Must be a mapping'
+               else:
+                       arguments = {}
+               arguments['----'] = object
+
+               if arguments.has_key('_attributes'):
+                       attributes = arguments['_attributes']
+                       del arguments['_attributes']
+               else:
+                       attributes = {}
+
+               aetools.keysubst(arguments, self._argmap_Precompile)
+
+               reply, arguments, attributes = self.send(_code, _subcode,
+                               arguments, attributes)
+               if arguments.has_key('errn'):
+                       raise MacOS.Error, aetools.decodeerror(arguments)
+               # XXXX Optionally decode result
+               if arguments.has_key('----'):
+                       return arguments['----']
+
+       _argmap_Create_Project = {
+               'from_stationery' : 'Tmpl',
+       }
+
+       def Create_Project(self, object, *arguments):
+               """Create Project: Create a new project file
+               Required argument: New project file specifier
+               Keyword argument from_stationery: undocumented, typecode 'alis'
+               Keyword argument _attributes: AppleEvent attribute dictionary
+               """
+               _code = 'MMPR'
+               _subcode = 'NewP'
+
+               if len(arguments) > 1:
+                       raise TypeError, 'Too many arguments'
+               if arguments:
+                       arguments = arguments[0]
+                       if type(arguments) <> type({}):
+                               raise TypeError, 'Must be a mapping'
+               else:
+                       arguments = {}
+               arguments['----'] = object
+
+               if arguments.has_key('_attributes'):
+                       attributes = arguments['_attributes']
+                       del arguments['_attributes']
+               else:
+                       attributes = {}
+
+               aetools.keysubst(arguments, self._argmap_Create_Project)
+
+               reply, arguments, attributes = self.send(_code, _subcode,
+                               arguments, attributes)
+               if arguments.has_key('errn'):
+                       raise MacOS.Error, aetools.decodeerror(arguments)
+               # XXXX Optionally decode result
+               if arguments.has_key('----'):
+                       return arguments['----']
+
+       def Close_Project(self, *arguments):
+               """Close Project: Close the current project
+               Keyword argument _attributes: AppleEvent attribute dictionary
+               """
+               _code = 'MMPR'
+               _subcode = 'ClsP'
+
+               if len(arguments) > 1:
+                       raise TypeError, 'Too many arguments'
+               if arguments:
+                       arguments = arguments[0]
+                       if type(arguments) <> type({}):
+                               raise TypeError, 'Must be a mapping'
+               else:
+                       arguments = {}
+
+               if arguments.has_key('_attributes'):
+                       attributes = arguments['_attributes']
+                       del arguments['_attributes']
+               else:
+                       attributes = {}
+
+
+               reply, arguments, attributes = self.send(_code, _subcode,
+                               arguments, attributes)
+               if arguments.has_key('errn'):
+                       raise MacOS.Error, aetools.decodeerror(arguments)
+               # XXXX Optionally decode result
+               if arguments.has_key('----'):
+                       return arguments['----']
+
+       def Remove_Binaries(self, *arguments):
+               """Remove Binaries: Remove the binary object code from the current project
+               Keyword argument _attributes: AppleEvent attribute dictionary
+               """
+               _code = 'MMPR'
+               _subcode = 'RemB'
+
+               if len(arguments) > 1:
+                       raise TypeError, 'Too many arguments'
+               if arguments:
+                       arguments = arguments[0]
+                       if type(arguments) <> type({}):
+                               raise TypeError, 'Must be a mapping'
+               else:
+                       arguments = {}
+
+               if arguments.has_key('_attributes'):
+                       attributes = arguments['_attributes']
+                       del arguments['_attributes']
+               else:
+                       attributes = {}
+
+
+               reply, arguments, attributes = self.send(_code, _subcode,
+                               arguments, attributes)
+               if arguments.has_key('errn'):
+                       raise MacOS.Error, aetools.decodeerror(arguments)
+               # XXXX Optionally decode result
+               if arguments.has_key('----'):
+                       return arguments['----']
+
+       _argmap_Update_Project = {
+               'ExternalEditor' : 'Errs',
+       }
+
+       def Update_Project(self, *arguments):
+               """Update Project: Update the current project
+               Keyword argument ExternalEditor: Should the contents of the message window be returned to the caller?
+               Keyword argument _attributes: AppleEvent attribute dictionary
+               Returns: Errors that occurred while updating the project
+               """
+               _code = 'MMPR'
+               _subcode = 'UpdP'
+
+               if len(arguments) > 1:
+                       raise TypeError, 'Too many arguments'
+               if arguments:
+                       arguments = arguments[0]
+                       if type(arguments) <> type({}):
+                               raise TypeError, 'Must be a mapping'
+               else:
+                       arguments = {}
+
+               if arguments.has_key('_attributes'):
+                       attributes = arguments['_attributes']
+                       del arguments['_attributes']
+               else:
+                       attributes = {}
+
+               aetools.keysubst(arguments, self._argmap_Update_Project)
+
+               reply, arguments, attributes = self.send(_code, _subcode,
+                               arguments, attributes)
+               if arguments.has_key('errn'):
+                       raise MacOS.Error, aetools.decodeerror(arguments)
+               # XXXX Optionally decode result
+               if arguments.has_key('----'):
+                       return arguments['----']
+
+       _argmap_Make_Project = {
+               'ExternalEditor' : 'Errs',
+       }
+
+       def Make_Project(self, *arguments):
+               """Make Project: Make the current project
+               Keyword argument ExternalEditor: Should the contents of the message window be returned to the caller?
+               Keyword argument _attributes: AppleEvent attribute dictionary
+               Returns: Errors that occurred while making the project
+               """
+               _code = 'MMPR'
+               _subcode = 'Make'
+
+               if len(arguments) > 1:
+                       raise TypeError, 'Too many arguments'
+               if arguments:
+                       arguments = arguments[0]
+                       if type(arguments) <> type({}):
+                               raise TypeError, 'Must be a mapping'
+               else:
+                       arguments = {}
+
+               if arguments.has_key('_attributes'):
+                       attributes = arguments['_attributes']
+                       del arguments['_attributes']
+               else:
+                       attributes = {}
+
+               aetools.keysubst(arguments, self._argmap_Make_Project)
+
+               reply, arguments, attributes = self.send(_code, _subcode,
+                               arguments, attributes)
+               if arguments.has_key('errn'):
+                       raise MacOS.Error, aetools.decodeerror(arguments)
+               # XXXX Optionally decode result
+               if arguments.has_key('----'):
+                       return arguments['----']
+
+       _argmap_Run_Project = {
+               'ExternalEditor' : 'Errs',
+               'SourceDebugger' : 'DeBg',
+       }
+
+       def Run_Project(self, *arguments):
+               """Run Project: Run the current project
+               Keyword argument ExternalEditor: Should the contents of the message window be returned to the caller?
+               Keyword argument SourceDebugger: Run the application under the control of the source-level debugger
+               Keyword argument _attributes: AppleEvent attribute dictionary
+               Returns: Errors that occurred when running the project
+               """
+               _code = 'MMPR'
+               _subcode = 'RunP'
+
+               if len(arguments) > 1:
+                       raise TypeError, 'Too many arguments'
+               if arguments:
+                       arguments = arguments[0]
+                       if type(arguments) <> type({}):
+                               raise TypeError, 'Must be a mapping'
+               else:
+                       arguments = {}
+
+               if arguments.has_key('_attributes'):
+                       attributes = arguments['_attributes']
+                       del arguments['_attributes']
+               else:
+                       attributes = {}
+
+               aetools.keysubst(arguments, self._argmap_Run_Project)
+
+               reply, arguments, attributes = self.send(_code, _subcode,
+                               arguments, attributes)
+               if arguments.has_key('errn'):
+                       raise MacOS.Error, aetools.decodeerror(arguments)
+               # XXXX Optionally decode result
+               if arguments.has_key('----'):
+                       return arguments['----']
+
+       _argmap_Set_Preferences = {
+               'To' : 'PRec',
+       }
+
+       def Set_Preferences(self, *arguments):
+               """Set Preferences: Set the preferences for the current project
+               Keyword argument To: Preferences settings
+               Keyword argument _attributes: AppleEvent attribute dictionary
+               """
+               _code = 'MMPR'
+               _subcode = 'Pref'
+
+               if len(arguments) > 1:
+                       raise TypeError, 'Too many arguments'
+               if arguments:
+                       arguments = arguments[0]
+                       if type(arguments) <> type({}):
+                               raise TypeError, 'Must be a mapping'
+               else:
+                       arguments = {}
+
+               if arguments.has_key('_attributes'):
+                       attributes = arguments['_attributes']
+                       del arguments['_attributes']
+               else:
+                       attributes = {}
+
+               aetools.keysubst(arguments, self._argmap_Set_Preferences)
+
+               reply, arguments, attributes = self.send(_code, _subcode,
+                               arguments, attributes)
+               if arguments.has_key('errn'):
+                       raise MacOS.Error, aetools.decodeerror(arguments)
+               # XXXX Optionally decode result
+               if arguments.has_key('----'):
+                       return arguments['----']
+
+       _argmap_Get_Preferences = {
+               'Of' : 'PRec',
+       }
+
+       def Get_Preferences(self, *arguments):
+               """Get Preferences: Get the preferences for the current project
+               Keyword argument Of: Preferences settings
+               Keyword argument _attributes: AppleEvent attribute dictionary
+               Returns: List of preferences
+               """
+               _code = 'MMPR'
+               _subcode = 'Gref'
+
+               if len(arguments) > 1:
+                       raise TypeError, 'Too many arguments'
+               if arguments:
+                       arguments = arguments[0]
+                       if type(arguments) <> type({}):
+                               raise TypeError, 'Must be a mapping'
+               else:
+                       arguments = {}
+
+               if arguments.has_key('_attributes'):
+                       attributes = arguments['_attributes']
+                       del arguments['_attributes']
+               else:
+                       attributes = {}
+
+               aetools.keysubst(arguments, self._argmap_Get_Preferences)
+
+               reply, arguments, attributes = self.send(_code, _subcode,
+                               arguments, attributes)
+               if arguments.has_key('errn'):
+                       raise MacOS.Error, aetools.decodeerror(arguments)
+               # XXXX Optionally decode result
+               if arguments.has_key('----'):
+                       return arguments['----']
+
+       def Is_In_Project(self, object, *arguments):
+               """Is In Project: Whether or not the specified file(s) is in the current project
+               Required argument: List of files to check for project membership
+               Keyword argument _attributes: AppleEvent attribute dictionary
+               Returns: Result code for each file
+               """
+               _code = 'MMPR'
+               _subcode = 'FInP'
+
+               if len(arguments) > 1:
+                       raise TypeError, 'Too many arguments'
+               if arguments:
+                       arguments = arguments[0]
+                       if type(arguments) <> type({}):
+                               raise TypeError, 'Must be a mapping'
+               else:
+                       arguments = {}
+               arguments['----'] = object
+
+               if arguments.has_key('_attributes'):
+                       attributes = arguments['_attributes']
+                       del arguments['_attributes']
+               else:
+                       attributes = {}
+
+
+               reply, arguments, attributes = self.send(_code, _subcode,
+                               arguments, attributes)
+               if arguments.has_key('errn'):
+                       raise MacOS.Error, aetools.decodeerror(arguments)
+               # XXXX Optionally decode result
+               if arguments.has_key('----'):
+                       return arguments['----']
+
+       def Get_Project_Specifier(self, *arguments):
+               """Get Project Specifier: Return the File Specifier for the current project
+               Keyword argument _attributes: AppleEvent attribute dictionary
+               Returns: File Specifier for the current project
+               """
+               _code = 'MMPR'
+               _subcode = 'GetP'
+
+               if len(arguments) > 1:
+                       raise TypeError, 'Too many arguments'
+               if arguments:
+                       arguments = arguments[0]
+                       if type(arguments) <> type({}):
+                               raise TypeError, 'Must be a mapping'
+               else:
+                       arguments = {}
+
+               if arguments.has_key('_attributes'):
+                       attributes = arguments['_attributes']
+                       del arguments['_attributes']
+               else:
+                       attributes = {}
+
+
+               reply, arguments, attributes = self.send(_code, _subcode,
+                               arguments, attributes)
+               if arguments.has_key('errn'):
+                       raise MacOS.Error, aetools.decodeerror(arguments)
+               # XXXX Optionally decode result
+               if arguments.has_key('----'):
+                       return arguments['----']
+
+       def Reset_File_Paths(self, *arguments):
+               """Reset File Paths: Resets access paths for all files belonging to open project.
+               Keyword argument _attributes: AppleEvent attribute dictionary
+               """
+               _code = 'MMPR'
+               _subcode = 'ReFP'
+
+               if len(arguments) > 1:
+                       raise TypeError, 'Too many arguments'
+               if arguments:
+                       arguments = arguments[0]
+                       if type(arguments) <> type({}):
+                               raise TypeError, 'Must be a mapping'
+               else:
+                       arguments = {}
+
+               if arguments.has_key('_attributes'):
+                       attributes = arguments['_attributes']
+                       del arguments['_attributes']
+               else:
+                       attributes = {}
+
+
+               reply, arguments, attributes = self.send(_code, _subcode,
+                               arguments, attributes)
+               if arguments.has_key('errn'):
+                       raise MacOS.Error, aetools.decodeerror(arguments)
+               # XXXX Optionally decode result
+               if arguments.has_key('----'):
+                       return arguments['----']
+
+       def Goto_Line(self, object, *arguments):
+               """Goto Line: Goto Specified Line Number
+               Required argument: The requested source file line number
+               Keyword argument _attributes: AppleEvent attribute dictionary
+               """
+               _code = 'MMPR'
+               _subcode = 'GoLn'
+
+               if len(arguments) > 1:
+                       raise TypeError, 'Too many arguments'
+               if arguments:
+                       arguments = arguments[0]
+                       if type(arguments) <> type({}):
+                               raise TypeError, 'Must be a mapping'
+               else:
+                       arguments = {}
+               arguments['----'] = object
+
+               if arguments.has_key('_attributes'):
+                       attributes = arguments['_attributes']
+                       del arguments['_attributes']
+               else:
+                       attributes = {}
+
+
+               reply, arguments, attributes = self.send(_code, _subcode,
+                               arguments, attributes)
+               if arguments.has_key('errn'):
+                       raise MacOS.Error, aetools.decodeerror(arguments)
+               # XXXX Optionally decode result
+               if arguments.has_key('----'):
+                       return arguments['----']
+
+       def Goto_Function(self, object, *arguments):
+               """Goto Function: Goto Specified Function Name
+               Required argument: undocumented, typecode 'TEXT'
+               Keyword argument _attributes: AppleEvent attribute dictionary
+               """
+               _code = 'MMPR'
+               _subcode = 'GoFn'
+
+               if len(arguments) > 1:
+                       raise TypeError, 'Too many arguments'
+               if arguments:
+                       arguments = arguments[0]
+                       if type(arguments) <> type({}):
+                               raise TypeError, 'Must be a mapping'
+               else:
+                       arguments = {}
+               arguments['----'] = object
+
+               if arguments.has_key('_attributes'):
+                       attributes = arguments['_attributes']
+                       del arguments['_attributes']
+               else:
+                       attributes = {}
+
+
+               reply, arguments, attributes = self.send(_code, _subcode,
+                               arguments, attributes)
+               if arguments.has_key('errn'):
+                       raise MacOS.Error, aetools.decodeerror(arguments)
+               # XXXX Optionally decode result
+               if arguments.has_key('----'):
+                       return arguments['----']
+
+       def Save_Message_Window_As(self, object, *arguments):
+               """Save Message Window As: Saves the message window as a text file
+               Required argument: Destination file for Save Message Window As
+               Keyword argument _attributes: AppleEvent attribute dictionary
+               """
+               _code = 'MMPR'
+               _subcode = 'SvMs'
+
+               if len(arguments) > 1:
+                       raise TypeError, 'Too many arguments'
+               if arguments:
+                       arguments = arguments[0]
+                       if type(arguments) <> type({}):
+                               raise TypeError, 'Must be a mapping'
+               else:
+                       arguments = {}
+               arguments['----'] = object
+
+               if arguments.has_key('_attributes'):
+                       attributes = arguments['_attributes']
+                       del arguments['_attributes']
+               else:
+                       attributes = {}
+
+
+               reply, arguments, attributes = self.send(_code, _subcode,
+                               arguments, attributes)
+               if arguments.has_key('errn'):
+                       raise MacOS.Error, aetools.decodeerror(arguments)
+               # XXXX Optionally decode result
+               if arguments.has_key('----'):
+                       return arguments['----']
+
+       def Get_Open_Documents(self, *arguments):
+               """Get Open Documents: Returns the list of open documents
+               Keyword argument _attributes: AppleEvent attribute dictionary
+               Returns: The list of documents
+               """
+               _code = 'MMPR'
+               _subcode = 'GDoc'
+
+               if len(arguments) > 1:
+                       raise TypeError, 'Too many arguments'
+               if arguments:
+                       arguments = arguments[0]
+                       if type(arguments) <> type({}):
+                               raise TypeError, 'Must be a mapping'
+               else:
+                       arguments = {}
+
+               if arguments.has_key('_attributes'):
+                       attributes = arguments['_attributes']
+                       del arguments['_attributes']
+               else:
+                       attributes = {}
+
+
+               reply, arguments, attributes = self.send(_code, _subcode,
+                               arguments, attributes)
+               if arguments.has_key('errn'):
+                       raise MacOS.Error, aetools.decodeerror(arguments)
+               # XXXX Optionally decode result
+               if arguments.has_key('----'):
+                       return arguments['----']
+
+       def Get_Segments(self, *arguments):
+               """Get Segments: Returns a description of each segment in the project.
+               Keyword argument _attributes: AppleEvent attribute dictionary
+               Returns: undocumented, typecode 'Seg '
+               """
+               _code = 'MMPR'
+               _subcode = 'GSeg'
+
+               if len(arguments) > 1:
+                       raise TypeError, 'Too many arguments'
+               if arguments:
+                       arguments = arguments[0]
+                       if type(arguments) <> type({}):
+                               raise TypeError, 'Must be a mapping'
+               else:
+                       arguments = {}
+
+               if arguments.has_key('_attributes'):
+                       attributes = arguments['_attributes']
+                       del arguments['_attributes']
+               else:
+                       attributes = {}
+
+
+               reply, arguments, attributes = self.send(_code, _subcode,
+                               arguments, attributes)
+               if arguments.has_key('errn'):
+                       raise MacOS.Error, aetools.decodeerror(arguments)
+               # XXXX Optionally decode result
+               if arguments.has_key('----'):
+                       return arguments['----']
+
+       _argmap_Set_Segment = {
+               'to' : 'Segm',
+       }
+
+       def Set_Segment(self, object, *arguments):
+               """Set Segment: Changes the name and attributes of a segment.
+               Required argument: The segment to change
+               Keyword argument to: The new name and attributes for the segment.
+               Keyword argument _attributes: AppleEvent attribute dictionary
+               """
+               _code = 'MMPR'
+               _subcode = 'SSeg'
+
+               if len(arguments) > 1:
+                       raise TypeError, 'Too many arguments'
+               if arguments:
+                       arguments = arguments[0]
+                       if type(arguments) <> type({}):
+                               raise TypeError, 'Must be a mapping'
+               else:
+                       arguments = {}
+               arguments['----'] = object
+
+               if arguments.has_key('_attributes'):
+                       attributes = arguments['_attributes']
+                       del arguments['_attributes']
+               else:
+                       attributes = {}
+
+               aetools.keysubst(arguments, self._argmap_Set_Segment)
+
+               reply, arguments, attributes = self.send(_code, _subcode,
+                               arguments, attributes)
+               if arguments.has_key('errn'):
+                       raise MacOS.Error, aetools.decodeerror(arguments)
+               # XXXX Optionally decode result
+               if arguments.has_key('----'):
+                       return arguments['----']
+
+       _argmap_Get_Project_File = {
+               'Segment' : 'Segm',
+       }
+
+       def Get_Project_File(self, object, *arguments):
+               """Get Project File: Returns a description of a file in the project window.
+               Required argument: The index of the file within its segment.
+               Keyword argument Segment: The segment containing the file.
+               Keyword argument _attributes: AppleEvent attribute dictionary
+               Returns: undocumented, typecode 'SrcF'
+               """
+               _code = 'MMPR'
+               _subcode = 'GFil'
+
+               if len(arguments) > 1:
+                       raise TypeError, 'Too many arguments'
+               if arguments:
+                       arguments = arguments[0]
+                       if type(arguments) <> type({}):
+                               raise TypeError, 'Must be a mapping'
+               else:
+                       arguments = {}
+               arguments['----'] = object
+
+               if arguments.has_key('_attributes'):
+                       attributes = arguments['_attributes']
+                       del arguments['_attributes']
+               else:
+                       attributes = {}
+
+               aetools.keysubst(arguments, self._argmap_Get_Project_File)
+
+               reply, arguments, attributes = self.send(_code, _subcode,
+                               arguments, attributes)
+               if arguments.has_key('errn'):
+                       raise MacOS.Error, aetools.decodeerror(arguments)
+               # XXXX Optionally decode result
+               if arguments.has_key('----'):
+                       return arguments['----']
+
+       _argmap_Set_Project_File = {
+               'to' : 'SrcS',
+       }
+
+       def Set_Project_File(self, object, *arguments):
+               """Set Project File: Changes the settings for a given file in the project.
+               Required argument: The name of the file
+               Keyword argument to: The new settings for the file
+               Keyword argument _attributes: AppleEvent attribute dictionary
+               """
+               _code = 'MMPR'
+               _subcode = 'SFil'
+
+               if len(arguments) > 1:
+                       raise TypeError, 'Too many arguments'
+               if arguments:
+                       arguments = arguments[0]
+                       if type(arguments) <> type({}):
+                               raise TypeError, 'Must be a mapping'
+               else:
+                       arguments = {}
+               arguments['----'] = object
+
+               if arguments.has_key('_attributes'):
+                       attributes = arguments['_attributes']
+                       del arguments['_attributes']
+               else:
+                       attributes = {}
+
+               aetools.keysubst(arguments, self._argmap_Set_Project_File)
+
+               reply, arguments, attributes = self.send(_code, _subcode,
+                               arguments, attributes)
+               if arguments.has_key('errn'):
+                       raise MacOS.Error, aetools.decodeerror(arguments)
+               # XXXX Optionally decode result
+               if arguments.has_key('----'):
+                       return arguments['----']
+
+       def Get_Definition(self, object, *arguments):
+               """Get Definition: Returns the location(s) of a globally scoped function or data object.
+               Required argument: undocumented, typecode 'TEXT'
+               Keyword argument _attributes: AppleEvent attribute dictionary
+               Returns: undocumented, typecode 'FDef'
+               """
+               _code = 'MMPR'
+               _subcode = 'GDef'
+
+               if len(arguments) > 1:
+                       raise TypeError, 'Too many arguments'
+               if arguments:
+                       arguments = arguments[0]
+                       if type(arguments) <> type({}):
+                               raise TypeError, 'Must be a mapping'
+               else:
+                       arguments = {}
+               arguments['----'] = object
+
+               if arguments.has_key('_attributes'):
+                       attributes = arguments['_attributes']
+                       del arguments['_attributes']
+               else:
+                       attributes = {}
+
+
+               reply, arguments, attributes = self.send(_code, _subcode,
+                               arguments, attributes)
+               if arguments.has_key('errn'):
+                       raise MacOS.Error, aetools.decodeerror(arguments)
+               # XXXX Optionally decode result
+               if arguments.has_key('----'):
+                       return arguments['----']
+
+
+#    Class 'C/C++ Language' ('FECP') -- 'C/C++ Language specifics'
+#        property 'Activate CPlusPlus' ('FE01') 'bool' -- 'To compile \322.c\323 files that use C++ features.' [mutable]
+#        property 'ARM Conformance' ('FE02') 'bool' -- 'To enforce ARM conformance for your source code.' [mutable]
+#        property 'ANSI Keywords Only' ('FE03') 'bool' -- 'To allow only ANSI C and C++ keywords.' [mutable]
+#        property 'Require Function Prototypes' ('FE04') 'bool' -- 'To enforce prototype checking.' [mutable]
+#        property 'Expand Trigraph Sequences' ('FE05') 'bool' -- 'To allow ANSI trigraph expressions.' [mutable]
+#        property 'Enums Always Ints' ('FE06') 'bool' -- 'To interpret enumeration constants as integers.' [mutable]
+#        property 'MPW Pointer Type Rules' ('FE07') 'bool' -- 'To use MPW (relaxed) pointer type-checking rules.' [mutable]
+#        property 'Direct Destruction' ('FE09') 'bool' -- 'To remove local and temporary C++ class objects that have destructors with a direct destructor call.' [mutable]
+#        property 'Dont Inline' ('FE10') 'bool' -- 'To generate C++ functions and function calls instead of inline functions.' [mutable]
+#        property 'Pool Strings' ('FE11') 'bool' -- 'To group all character string constants into a single object.' [mutable]
+#        property 'Dont Reuse Strings' ('FE12') 'bool' -- 'To prevent merging identical character string literals.' [mutable]
+#        property 'ANSI Strict' ('FE13') 'bool' -- 'To enforce strict ANSI C and ANSI C++ rules.' [mutable]
+#        property 'MPW Newlines' ('FE14') 'bool' -- 'To convert \324\\n\325 to carriage returns (ASCII 13) and \324\\r\325 to line feeds (ASCII 10).' [mutable]
+#        property 'Illegal Pragmas' ('WA01') 'bool' -- 'To enforce illegal pragma checking.' [mutable]
+#        property 'Empty Declarations' ('WA02') 'bool' -- 'To enforce empty declaration checking.' [mutable]
+#        property 'Possible Errors' ('WA03') 'bool' -- 'To enforce possible error checking.' [mutable]
+#        property 'Extra Commas' ('WA06') 'bool' -- 'To enforce extra comma checking.' [mutable]
+#        property 'Extended Error Checking' ('WA07') 'bool' -- 'To enforce extended error checking.' [mutable]
+#        property 'Treat Warnings As Errors' ('WA08') 'bool' -- 'To treat the warnings as compiler errors.' [mutable]
+
+#    Class 'Pascal Language' ('FEPA') -- 'Pascal Language specifics'
+#        property 'Activate Range Checking' ('FP01') 'bool' -- 'To activate array index reference and variable assignment checking at compile and run time.' [mutable]
+#        property 'Use Propagation' ('FP03') 'bool' -- 'To propagate unit objects among imported objects.' [mutable]
+#        property 'Activate Overflow Checking' ('FP04') 'bool' -- 'To activate run-time overflow checking.' [mutable]
+#        property 'Generate Map' ('FP05') 'bool' -- 'To generate a Make map file.' [mutable]
+#        property 'Case Sensitive' ('FP06') 'bool' -- 'To support case sensitive identifier.' [mutable]
+#        property 'ANS Conformance' ('FP07') 'bool' -- 'To conform to the ANS standard.' [mutable]
+#        property 'Modified ForLoop Indexes' ('WP01') 'bool' -- 'To verify that for loop indexes are not overwritten.' [mutable]
+#        property 'Function Returns' ('WP02') 'bool' -- 'To verify that functions get at least one return value.' [mutable]
+#        property 'Undefined Routines' ('WP03') 'bool' -- 'To report routines declared but not defined.' [mutable]
+#        property 'GotoAndLabels' ('WP04') 'bool' -- 'To enable goto checking in for, with, case and if statements.' [mutable]
+#        property 'BranchingIntoWith' ('WP05') 'bool' -- 'Verify that labels in a WITH statement are referenced from within the same statement' [mutable]
+#        property 'BranchingIntoFor' ('WP06') 'bool' -- 'Verify that labels in a FOR statement are referenced from within the same statement' [mutable]
+#        property 'BranchingBetweenCase' ('WP07') 'bool' -- 'Verify that labels in a CASE statement leg are not referenced from within another leg of the same statement.' [mutable]
+#        property 'BranchingBetweenIfAndElse' ('WP08') 'bool' -- 'Verify that there\325s no jump between the IF and the ELSE part of the same IF statement.' [mutable]
+
+#    Class 'Common Language' ('FECO') -- 'Common to the C/C++ and Pascal language'
+#        property 'Prefix File' ('FE08') 'TEXT' -- 'The name of the prefix file you wish to include in all of your project files.' [mutable]
+#        property 'Unused Variables' ('WA04') 'bool' -- 'To enforce unused variable checking.' [mutable]
+#        property 'Unused Arguments' ('WA05') 'bool' -- 'To enforce unused argument checking.' [mutable]
+
+#    Class 'MC68K Linker' ('LN68') -- 'MC68K Linker specifics'
+#        property 'Code Model' ('BE01') 'shor' -- 'To select the type of object code you wish to generate. (0 : Small; 1 : Smart; 2 : Large)' [mutable]
+#        property 'MC68020 CodeGen' ('BE03') 'bool' -- 'To generate object code for computers with the MC68020, MC68030, or MC68040 processor.' [mutable]
+#        property 'MC68881 CodeGen' ('BE04') 'bool' -- 'To reroute all math calls from SANE directly to a MC68881 or MC68882 FPU.' [mutable]
+#        property 'Far Virtual Function Tables' ('BE08') 'bool' -- 'To make far branches in subroutines. (Not supported in Pascal)' [mutable]
+#        property 'Far String Constants' ('BE09') 'bool' -- 'To place all string constants into far data space.' [mutable]
+#        property 'Four Bytes Ints' ('BE10') 'bool' -- 'To force integers to occupy 4 bytes. (Not supported in Pascal)' [mutable]
+#        property 'Eight Byte Double' ('BE11') 'bool' -- 'To force doubles to occupy 8 bytes.' [mutable]
+#        property 'Far Data' ('BE12') 'bool' -- 'To remove the 68K limit on global data.' [mutable]
+#        property 'PC Relative Strings' ('BE14') 'bool' -- 'To reference string literals using PC-relative addressing.' [mutable]
+#        property 'MPW Calling Conventions' ('BE15') 'bool' -- 'To use MPW C calling conventions.' [mutable]
+#        property 'MacsBug Symbols' ('LN01') 'shor' -- 'To select the MacsBug version you are using. ( 0 : None; 1 : Old Style; 2 : New Style)' [mutable]
+#        property 'Generate A6 Stack Frames' ('LN05') 'bool' -- 'To be able to use the Metrowerks Debugger, The Debugger by Jasik Designs, or SourceBug\252 to examine your source code.' [mutable]
+#        property 'The Debugger Aware' ('LN06') 'bool' -- 'To allow Steve Jasik\325s The Debugger to debug multiple segment projects.' [mutable]
+#        property 'Link Single Segment' ('LN07') 'bool' -- 'To link all of your project segments into one segment.' [mutable]
+#        property 'Multi Segment' ('PR10') 'bool' -- 'To divide your resource into many code segments in your resource file.' [mutable]
+#        property 'Header Type' ('PR16') 'shor' -- 'To select the type of code resource to create. (Not supported yet)' [mutable]
+#        property 'A4 Relative Data' ('PR17') 'bool' -- 'To use A4 relative data.' [mutable]
+#        property 'Seg Type' ('PR18') 'shor' -- 'To set the segment type for your code resource.' [mutable]
+
+#    Class 'PowerPC Linker' ('LNCP') -- 'PowerPC Linker specifics'
+#        property 'Make String ReadOnly' ('B601') 'bool' -- 'To store string literals in the code section.' [mutable]
+#        property 'Instruction Scheduling' ('B602') 'bool' -- 'To rearrange instructions to take advantage of the RISC pipelined architecture.' [mutable]
+#        property 'Optimization Level' ('B603') 'shor' -- 'To select the level of optimization to be applied (from 1 to 4).' [mutable]
+#        property 'Global Optimization' ('B604') 'bool' -- 'To turn on the global optimizer.' [mutable]
+#        property 'Suppress Warnings' ('L601') 'bool' -- 'To suppress reporting of non-fatal linker errors.' [mutable]
+#        property 'Initialization Name' ('L602') 'TEXT' -- 'The name of the function to call, when the PEF fragment is loaded.' [mutable]
+#        property 'Main Name' ('L603') 'TEXT' -- 'The name of the main function.' [mutable]
+#        property 'Termination Name' ('L604') 'TEXT' -- 'The name of the last function to call, before the PEF fragment is unloaded.' [mutable]
+#        property 'Export Symbols' ('PE01') 'shor' -- 'To select which symbols to export from the PEF container.' [mutable]
+#        property 'Old Definition' ('PE02') 'long' -- 'The version number for the PEF container.' [mutable]
+#        property 'Old Implementation' ('PE03') 'long' -- 'The version number for the PEF container.' [mutable]
+#        property 'Current Version' ('PE04') 'long' -- 'The version number for the PEF container.' [mutable]
+#        property 'Order Code Section By Segment' ('PE05') 'bool' -- 'To order functions in the Code section of your program according to their #pragma segment names.' [mutable]
+#        property 'Share Data Section' ('PE06') 'bool' -- 'To share the Data section of a shared library between all applications that use it.' [mutable]
+#        property 'Expand Uninitialized Data' ('PE07') 'bool' -- 'To expand the zero-initialized portion of the Data section of your program at link time.' [mutable]
+#        property 'Fragment Name' ('PE08') 'TEXT' -- 'To specify the code fragment name. The default is the output file name.' [mutable]
+#        property 'Stack Size' ('P601') 'long' -- 'The minimum amount of stack your application needs when launched by the Finder.' [mutable]
+
+#    Class 'Common Linker' ('LNCO') -- 'Common for the MC68K and PowerPC Linker'
+#        property 'Struct Alignment' ('BE02') 'shor' -- 'To select how the fields of your structures will be aligned. (0 : 68K; 1 : 68K 4 bytes; 2 : PowerPC)' [mutable]
+#        property 'Peephole Optimizer' ('BE05') 'bool' -- 'To apply local optimizations to small sections of your code.' [mutable]
+#        property 'CSE Optimizer' ('BE06') 'bool' -- 'To activate common sub expression optimization.' [mutable]
+#        property 'Optimize For Size' ('BE07') 'bool' -- 'To minimize the size of your application or code resource.' [mutable]
+#        property 'Use Profiler' ('BE13') 'bool' -- 'To add profiler calls in the code.' [mutable]
+#        property 'Generate SYM File' ('LN02') 'bool' -- 'To create a SYM file for your project when it is built.' [mutable]
+#        property 'Full Path In Sym Files' ('LN03') 'bool' -- 'To put the full path of your application or code resource in your SYM files.' [mutable]
+#        property 'Generate Link Map' ('LN04') 'bool' -- 'To create a MAP file for your project when it is built.' [mutable]
+#        property 'Fast Link' ('LN08') 'bool' -- 'To link the code together in memory.' [mutable]
+#        property 'Project Type' ('PR01') 'shor' -- 'To select the type of binary you wish to create.\015\015for 68K : (0 : Application; 1 : Code Resource; 2 : Library; 3 : MPW Tool) for PowerPC : (0 : Application; 1 : Shared Library; 2 : Code Resource; 3 : Library)' [mutable]
+#        property 'File Name' ('PR02') 'TEXT' -- 'The name your binary will be given when created.' [mutable]
+#        property 'File Creator' ('PR03') 'TEXT' -- 'The creator name of your binary.' [mutable]
+#        property 'File Type' ('PR04') 'TEXT' -- 'The four character code type for your binary.' [mutable]
+#        property 'Minimum Size' ('PR05') 'long' -- 'The minimum amount of RAM your application needs when launched by the Finder.' [mutable]
+#        property 'Preferred Size' ('PR06') 'long' -- 'The preferred amount of RAM your application needs when launched by the Finder.' [mutable]
+#        property 'SIZE Flags' ('PR07') 'shor' -- 'To tell the Finder which type of events your application accepts.' [mutable]
+#        property 'SYM File' ('PR08') 'TEXT' -- 'The name of the SYM file to be generated when your binary is created.' [mutable]
+#        property 'Resource Name' ('PR09') 'TEXT' -- 'The name of the code resource to be created.' [mutable]
+#        property 'Display Dialog' ('PR11') 'bool' -- 'To display a dialog box which asks you where to save your built resource.' [mutable]
+#        property 'Merge To File' ('PR12') 'bool' -- 'To create and merge your resource into a file which already exists.' [mutable]
+#        property 'Resource Flags' ('PR13') 'bool' -- 'To select your resource flag options.' [mutable]
+#        property 'Resource Type' ('PR14') 'shor' -- 'The four character code type for your code resource.' [mutable]
+#        property 'Resource ID' ('PR15') 'shor' -- 'The ID to assign to your code resource.' [mutable]
+
+#    Class 'Common' ('COMM') -- 'Common to C/C++ and Pascal Language & MC68K and PowerPC Linker.'
+#        property 'User Paths' ('PA01') 'list' -- 'To add an access path for the source files.' [mutable]
+#        property 'Always Full Search' ('PA02') 'bool' -- 'To force the compiler to search for system includes like it searches for user includes.' [mutable]
+#        property 'System Paths' ('PA03') 'list' -- 'To add an access path for the include files. (Not supported in Pascal)' [mutable]
+
+#    Class 'Error Information' ('ErrM') -- 'Describes a single error or warning from the compiler or the linker.'
+#        property 'kind' ('ErrT') 'ErrT' -- 'The type of error or warning.' [enum]
+#        property 'message' ('ErrS') 'TEXT' -- 'The error or warning message.' []
+#        property 'disk file' ('file') 'fss ' -- 'The file where the error occurred.  May not be returned for certain kinds of errors (eg, link errors).' []
+#        property 'line' ('ErrL') 'long' -- 'The line in the file where the error occurred.  May not be returned for certain kinds of errors (eg, link errors).' []
+
+#    Class 'Document' ('docu') -- 'An open text file'
+#        property 'name' ('pnam') 'TEXT' -- 'The document\325s name' []
+#        property 'mode' ('Mode') 'Mode' -- 'The document\325s open mode' [enum]
+#        property 'disk file' ('file') 'fss ' -- 'The document\325s location on disk' []
+
+#    Class 'Segment' ('Seg ') -- 'A segment or group in the project'
+#        property 'name' ('pnam') 'TEXT' -- '' [mutable]
+#        property 'filecount' ('NumF') 'shor' -- '' []
+#        property 'preloaded' ('Prel') 'bool' -- 'Is the segment preloaded ? [68K only]' [mutable]
+#        property 'protected' ('Prot') 'bool' -- 'Is the segment protected ? [68K only]' [mutable]
+#        property 'locked' ('PLck') 'bool' -- 'Is the segment locked ? [68K only]' [mutable]
+#        property 'purgeable' ('Purg') 'bool' -- 'Is the segment purgeable ? [68K only]' [mutable]
+#        property 'system heap' ('SysH') 'bool' -- 'Is the segment loaded into the system heap ? [68K only]' [mutable]
+
+#    Class 'ProjectFile' ('SrcF') -- 'A file contained in a project'
+#        property 'filetype' ('SrcT') 'SrcT' -- 'What kind of file is this ?' [enum]
+#        property 'name' ('pnam') 'TEXT' -- 'The file\325s name' []
+#        property 'disk file' ('file') 'fss ' -- 'The file\325s location on disk' []
+#        property 'codesize' ('CSiz') 'long' -- 'The size of this file\325s code.' []
+#        property 'datasize' ('DSiz') 'long' -- 'The size of this file\325s data.' []
+#        property 'up to date' ('UpTD') 'bool' -- 'Has the file been compiled since its last modification ?' []
+#        property 'symbols' ('SymG') 'bool' -- 'Are debugging symbols generated for this file ?' [mutable]
+#        property 'weak link' ('Weak') 'bool' -- 'Is this file imported weakly into the project ? [PowerPC only]' [mutable]
+
+#    Class 'Function Information' ('FDef') -- 'Describes the location of any function or global data definition within the current project.'
+#        property 'disk file' ('file') 'fss ' -- 'The location on disk of the file containing the definition.' []
+#        property 'line' ('ErrL') 'long' -- 'The line number where the definition begins.' []