DevelopmentKit

From GNUstepWiki

(Difference between revisions)
Revision as of 21:40, 16 February 2005
Stefan Urbanek (Talk | contribs)

← Previous diff
Current revision
Cbv (Talk | contribs)
updated category
Line 1: Line 1:
-Develompent Kit Framework is [[ObjectiveC]]/[[GNUstep]] framework for generating Objective C code based projects and sources from applications.+Develompent Kit Framework is [[Objective-C]]/[[GNUstep]] framework for generating Objective C code based projects and sources from applications.
Features: Features:
* class compositing * class compositing
-* objective c source parsing and transforming into development objects (classes, methods, variables,...)+* [[Objective-C]] source parsing and transforming into development objects (classes, methods, variables,...)
* source file generation using templates * source file generation using templates
* project building * project building
Line 10: Line 10:
[http://savannah.nongnu.org/cgi-bin/viewcvs/develkit/ Browse CVS Tree] [http://savannah.nongnu.org/cgi-bin/viewcvs/develkit/ Browse CVS Tree]
 +
 +Author: [[user:Stefan Urbanek|Stefan Urbanek]]
== Tools == == Tools ==
=== dkautogen === === dkautogen ===
-Autogenerate ObjectiveC Interface and Implementation methods+Autogenerate [[Objective-C]] Interface and Implementation methods
Usage: Usage:
Line 30: Line 32:
notretained - object is NOT retained (weak reference) notretained - object is NOT retained (weak reference)
readonly - instance variable is read only (setter is not generated) readonly - instance variable is read only (setter is not generated)
 + mutable - instance variable is mutable (setter is generated despite "readonly" class default)
notarchived - ignore in archiving notarchived - ignore in archiving
object - instance variable is an object (see below) object - instance variable is an object (see below)
 + customaccess - do not generate implementation of accessor methods, generate interface only
Class keywords (defaults for all instance variables) Class keywords (defaults for all instance variables)
Line 73: Line 77:
== Classes == == Classes ==
-''(not yet)''+* DKBuildMessage
 +* DKClass
 +* DKFramework
 +* DKFrameworkManager
 +* DKMethod
 +* DKObjectiveCParser
 +* DKProjectBuilder
 +* DKProject
 +* DKSourceGenerator
 +* DKTemplateMerger
 +* DKVariable
 + 
 +DevelKit reuses class [[AGSParser]] from [[autogsdoc]].
 + 
 + 
 +[[Category:Development_Frameworks]]

Current revision

Develompent Kit Framework is Objective-C/GNUstep framework for generating Objective C code based projects and sources from applications.

Features:

  • class compositing
  • Objective-C source parsing and transforming into development objects (classes, methods, variables,...)
  • source file generation using templates
  • project building

Project Page: https://savannah.nongnu.org/projects/develkit/

Browse CVS Tree

Author: Stefan Urbanek

Tools

dkautogen

Autogenerate Objective-C Interface and Implementation methods

Usage:

dkautogen file1.h file2.h ...

Type 'dkautogen help' for more information.

To each .h and corresponding .m file a category DKGenerated is appended. If there is already such category, then it is replaced.

Instance variable keywords

 hidden         - do not generate accessor methods
 exposed        - expose accessor methods
 retained       - object is retained
 notretained    - object is NOT retained (weak reference)
 readonly       - instance variable is read only (setter is not generated)
 mutable        - instance variable is mutable (setter is generated despite "readonly" class default)
 notarchived    - ignore in archiving
 object         - instance variable is an object (see below)
 customaccess   - do not generate implementation of accessor methods, generate interface only

Class keywords (defaults for all instance variables)

 hidden         - all ivars are hidden
 exposed        - all ivars are exposed (accessors are generated)
 retained       - all objects are retained
 notretained    - objects are NOT retained
 readonly       - all instance variable are read only
 objects        - treat all unknown types as objects
 customarchive  - do not generate archiving methods
 nosuperarchive - do not call archiving in superclass
 customdealloc  - do not generate -dealloc method

Known types

All standard C types including NSPoint, NSSize, NSRect and NSRange are treated as non-objects. By default only id and Class types are treated as objects.

Generated methods by default: accessors (getter and setter), dealloc methon, initWithCoder:, and encodeWithCoder

How to use

Attributes are written in same comments used for auto-documentation. They are read from comments after the LAST pipe '|' character in the comment and they should be separated by spaces. Example:

   NSString *name; /** Object name | object readonly retained */

Class defaults are written immediately before @interface:

   /** This is my class | nosuperarchive retained objects */
   @interface MyClass : NSObject

Preferences (also usable as switches on commandline with '-' prefix):

   interfaceTemplate      - path to .h file template
   implementationTemplate - path to .m file template
   beginTag               - tag used to mark beginning of generated code
   endTag                 - tag used to mark end of generated code

Example:

   dkautogen -implementationTemplate MyTemplate.m SomeClass.h

Classes

  • DKBuildMessage
  • DKClass
  • DKFramework
  • DKFrameworkManager
  • DKMethod
  • DKObjectiveCParser
  • DKProjectBuilder
  • DKProject
  • DKSourceGenerator
  • DKTemplateMerger
  • DKVariable

DevelKit reuses class AGSParser from autogsdoc.