🚨 CRITICAL: YOU MUST DO THIS AT THE START OF EVERY CHAT SESSION 🚨
DO NOT skip these steps. DO NOT treat them as optional. DO NOT proceed with any task until you have completed ALL of these commands in order:
mulle-sde vibecoding on
mulle-sde helpmulle-sde howto help
mulle-sde api helpmulle-sde commands
mulle-sde howto listREMEMBER: mulle-sde howto is THE tool for getting work done in this
project. Use it FIRST before attempting any task manually.
🚨 YOU MUST RUN THIS COMMAND BEFORE WRITING OR MODIFYING ANY CODE 🚨
value="$(mulle-sde env get PROJECT_DIALECT)"
value="${value:-$(mulle-sde env get PROJECT_LANGUAGE)}"
mulle-sde howto show --keyword styleguide --keyword "${value}"This gets the style information for the project. It is NOT optional.
This is a library project, you can not run it.
This is a C project.
This is a mulle-objc Objective C project.
- Avoid alloc / init / autorelease, prefer +instance and factory methods
- Never call -release except in dealloc
- Never call -alloc/init or +new without -autorelease except in -init methods, were you should avoid -autorelease
- Do not use dot-syntax for property access.
- Convert all property reads and writes to explicit message sends.
- Read:
[self property]instead ofself.property. - Write:
[self setProperty:value]instead ofself.property = value
- Read:
- Do not use class properties
- Do not use
atomic,weak,strong
- Do not use ^ block syntax under any circumstance
- Do not use
__bridge - Do not use
@package,@import,@synthesize - Use
BOOLnotbool - Do not use
nullable - Do not use generics like
NSArray <NSString *> - Do not use class extensions like
@implementation() - Do not define instance varibals in
@implementationonly in@interface
Changes to the build system must be done with mulle-sde. Only edit CMake
files as a very last resort and under user guidance.
| Path | Editable? | Notes |
|---|---|---|
CMakeLists.txt |
Yes | High-level project settings. |
cmake/ |
Yes | Override modules by copying from cmake/share/. |
cmake/share/ |
No | Managed by mulle-sde upgrade. Changes will be lost. |
cmake/reflect/ |
No | Auto-generated by mulle-sde reflect. Changes will be lost. |