// Objective-C API for talking to structs Go package.
//   gobind -lang=objc structs
//
// File is generated by gobind. Do not edit.

#ifndef __GoStructs_H__
#define __GoStructs_H__

#include <Foundation/Foundation.h>

@class GoStructsS;

@interface GoStructsS : NSObject {
}
@property(strong, readonly) id _ref;

- (id)initWithRef:(id)ref;
- (double)x;
- (void)setX:(double)v;
- (double)y;
- (void)setY:(double)v;
- (BOOL)identity:(GoStructsS**)ret0_ error:(NSError**)error;
- (double)sum;
@end

FOUNDATION_EXPORT GoStructsS* GoStructsIdentity(GoStructsS* s);

FOUNDATION_EXPORT BOOL GoStructsIdentityWithError(GoStructsS* s, GoStructsS** ret0_, NSError** error);

#endif
