Autodocument ApplescriptObjC Classes to sdef files

Hi All,

Well my applescriptObjC applications are becomming big and have dozens of applescript classes in it. I’ve made an script reads out the class, special comments and create an sdef file to open it back in xcode or script editor. The code works for me and is become quite handy but the code is not ready for publication. But is would like to know if users are interested in this code or not. So before optimisng this code I wait for your answers and maybe we could improve the code and add some features with other scripters as well. I’ll hear from you guys (hopefully).

a dummy script like this

script mount
	--#description:properties:
	property parent : class "NSObject"
	--#description:inh. class NSObject
	property undocumentedProperty : null
	--#visible:0
	
	on init()
		--#description:Init function needs to be called after allocation
		set errnum to 0
		--#return:id;The initialized receiver.
		return self()
	end init
	
	on mountAFPVolume_onServer_asUser_withPassword_toNode_(severVolume, serverAddress, username, passwd, localNode)
		--#description:Mount an afp volume to a new or existing node. Script works conform command line mount.
		--#description: If a node contains files or is already mounted it would return an integer 0
		--#parameter:severVolume/string/name of the volume of the server
		--#parameter:serverAddress/string/hostname or ip of the server
		--#parameter:username/string/username to login with on the server or null to login as guest
		--#parameter:passwd/string/password for username or null if user has no password
		--#parameter:localNode/posix path/directory to mount to 
		--#return:integer;0 if succeeded, any other value is an error
		return 0
	end mountAFPVolume_onServer_asUser_withPassword_toNode_
	
	on unMountVolume_(localNode)
		--#discription:unmounting a volume using diskutil
		--#parameter:localNode/posix path/Path to node
		return
	end unMountVolume_
	
	on createLocalNode_(localNode)
		--#description:Creating a new directory where to mount to.
		--#description: If directory don't exists a new directory will be created.
		--#description: After creating a directory it will check if it was succesfuly created.
		--#description: If directory exists it checks if it's empty or not.
		--#description: This method will also be used in mountAFPVolume
		--#parameter:localNode/posix path/path to directory that will be used as node
		--#return:boolean;true if an empty folder is created or already existed, false if creating a folder failed or folder is not empty
		return true
	end createLocalNode_
	
	on fileExists(posixPath)
		--#visible:0
		return true
	end fileExists
	
	on volumeIsMounted(volumePath)
		--#visible:0
		return true
	end volumeIsMounted
end script

would set this in a file (copy content, paste it in a plain text file, save it with an extension sdef and double click to open it)

Well the problem is also that it’s not idiot proof because the comments must be typed correctly what makes it buggy. All those things has to be programmed to make it usefull for everyone.