Skip navigation.
 
mlRe: Dynamic message typing problem
FROM : Julius Guzy
DATE : Sat May 17 01:51:54 2008

Thanks to all who replied to my pleas for help.
I took Bill and Scott's suggestions to heart and produced the answer 
I needed: Dynamic Typing which allows me to avoid circularity etc.

I post the complete solution as an example and to check that I'm not 
running close to the wind by using a dummy class definition. The code 
gets no compiler warnings.

//  AnonTargetClass.h
#import <Cocoa/Cocoa.h>
@interface AnonTargetClass : NSObject {
}
- (void) printFloat:(float)pF;

//  AnonTargetClass.m
#import "AnonTargetClass.h"
@implementation AnonTargetClass
- (void) printFloat:(float)pF {
   NSLog(@"%7.3f",pF);
}

//  DummyClass.h
#import <Cocoa/Cocoa.h>
@interface DummyClass : NSObject {
}
- (void) printFloat:(float)pF;

//  DummyClass.m
#import "DummyClass.h"
@implementation DummyClass
- (void) printFloat:(float)pF {
}

//  CallingClass.h
#import <Cocoa/Cocoa.h>
#import "DummyClass.h";
@interface CallingClass : NSObject {
}
- (void) callPrintConstFloat:(id)pId;
- (void) callPrint:(id)pId zFloat:(float)pF;

//  CallingClass.m
#import "CallingClass.h"
@implementation CallingClass
- (void) callPrintConstFloat:(id)pId {
   [pId printFloat:99.99];
}
- (void) callPrint:(id)pId zFloat:(float)pF {
   [pId printFloat:pF];
}

//  main.m
#import <Cocoa/Cocoa.h>
#import "AnonTargetClass.h"
#import "CallingClass.h"

int main(int argc, char *argv[])
{
   AnonTargetClass     * atcObj        = [[AnonTargetClass alloc]init];
   CallingClass            * callingObj    = [[CallingClass alloc]init];
   
   [callingObj callPrintConstFloat:atcObj];    
   [atcObj printFloat:88.88];
}


[Session started at 2008-05-17 00:33:01 +0100.]
2008-05-17 00:33:01.988 testDynamicBinding[2436:10b]  99.990
2008-05-17 00:33:01.989 testDynamicBinding[2436:10b]  88.880

Thanks again
Julius

http://juliuspaintings.co.uk

Related mailsAuthorDate
mlDynamic message typing problem Julius Guzy May 15, 03:19
mlRe: Dynamic message typing problem Michael Vannorsdel May 15, 13:41
mlRe: Dynamic message typing problem Julius Guzy May 16, 17:21
mlRe: Dynamic message typing problem Michael Vannorsdel May 16, 18:12
mlRe: Dynamic message typing problem Julius Guzy May 16, 19:13
mlRe: Dynamic message typing problem Scott Ribe May 16, 20:11
mlRe: Dynamic message typing problem Julius Guzy May 16, 23:17
mlRe: Dynamic message typing problem Bill Bumgarner May 16, 23:34
mlRe: Dynamic message typing problem Scott Ribe May 16, 23:52
mlRe: Dynamic message typing problem Michael Vannorsdel May 17, 00:06
mlRe: Dynamic message typing problem Scott Ribe May 17, 00:39
mlRe: Dynamic message typing problem I. Savant May 17, 01:05
mlRe: Dynamic message typing problem Julius Guzy May 17, 01:51
mlRe: Dynamic message typing problem Bill Bumgarner May 17, 01:58
mlRe: Dynamic message typing problem Jens Alfke May 17, 02:11
mlRe: Dynamic message typing problem I. Savant May 17, 02:21
mlRe: Dynamic message typing problem Julius Guzy May 17, 13:55
mlRe: Dynamic message typing problem Michael Vannorsdel May 17, 15:40