blob: af80036d2567cd8e07e725e78b763be12a6c557e [file] [log] [blame] [edit]
// Copyright (c) 2024, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
#ifndef OBJECTIVE_C_SRC_PROXY_H_
#define OBJECTIVE_C_SRC_PROXY_H_
#import <Foundation/NSProxy.h>
@interface DartProxyBuilder : NSObject
+ (instancetype)new;
- (instancetype)init;
- (void)dealloc;
- (void)implementMethod:(SEL) sel
withSignature:(NSMethodSignature *)signature
andBlock:(void *)block;
@end
@interface DartProxy : NSProxy
+ (instancetype)newFromBuilder:(DartProxyBuilder*)builder;
- (instancetype)initFromBuilder:(DartProxyBuilder*)builder;
- (void)dealloc;
- (BOOL)respondsToSelector:(SEL)sel;
- (NSMethodSignature *)methodSignatureForSelector:(SEL)sel;
- (void)forwardInvocation:(NSInvocation *)invocation;
@end
#endif // OBJECTIVE_C_SRC_PROXY_H_