Difference between revisions of "DevelopmentKit"
(updated category) |
|||
(2 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
− | Develompent Kit Framework is [[ | + | 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,...) |
* source file generation using templates | * source file generation using templates | ||
* project building | * project building | ||
Line 16: | Line 16: | ||
=== dkautogen === | === dkautogen === | ||
− | Autogenerate | + | Autogenerate [[Objective-C]] Interface and Implementation methods |
Usage: | Usage: | ||
Line 32: | 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) | ||
Line 91: | Line 92: | ||
− | [[Category: | + | [[Category:Development_Frameworks]] |
Latest revision as of 15:27, 23 October 2006
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/
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