Browse files

v1.8.2

  • Loading branch information...
1 parent df3aeea commit 8abbac9809a9ae21848b62f755503bd00e6973ad @groue committed Oct 9, 2011
View
2 Classes/GRMustacheVersion.h
@@ -40,5 +40,5 @@
@since v1.0.0
*/
-#define GRMUSTACHE_PATCH_VERSION 1
+#define GRMUSTACHE_PATCH_VERSION 2
View
52 RELEASE_NOTES.md
@@ -1,13 +1,57 @@
GRMustache Release Notes
========================
+## v1.8.2
+
+Better testing of public API thanks to availability macros.
+
## v1.8.1
Bug fixes
## v1.8
-**GRMustache now supports [mustache/spec v1.1.2](https://github.com/mustache/spec).**
+**GRMustache now supports the [Mustache specification v1.1.2](https://github.com/mustache/spec).**
+
+New type and enum:
+
+ enum {
+ GRMustacheTemplateOptionNone = 0,
+ GRMustacheTemplateOptionMustacheSpecCompatibility = 0x01,
+ };
+
+ typedef NSUInteger GRMustacheTemplateOptions;
+
+New GRMustache methods:
+
+- `+ (GRMustacheTemplateOptions)defaultTemplateOptions;`
+- `+ (void)setDefaultTemplateOptions:(GRMustacheTemplateOptions)templateOptions;`
+
+New GRMustacheTemplate methods:
+
+- `+ (id)parseString:(NSString *)templateString options:(GRMustacheTemplateOptions)options error:(NSError **)outError;`
+- `+ (id)parseContentsOfURL:(NSURL *)url options:(GRMustacheTemplateOptions)options error:(NSError **)outError;`
+- `+ (id)parseContentsOfFile:(NSString *)path options:(GRMustacheTemplateOptions)options error:(NSError **)outError;`
+- `+ (id)parseResource:(NSString *)name bundle:(NSBundle *)bundle options:(GRMustacheTemplateOptions)options error:(NSError **)outError;`
+- `+ (id)parseResource:(NSString *)name withExtension:(NSString *)ext bundle:(NSBundle *)bundle options:(GRMustacheTemplateOptions)options error:(NSError **)outError;`
+- `+ (NSString *)renderObject:(id)object fromString:(NSString *)templateString options:(GRMustacheTemplateOptions)options error:(NSError **)outError;`
+- `+ (NSString *)renderObject:(id)object fromContentsOfURL:(NSURL *)url options:(GRMustacheTemplateOptions)options error:(NSError **)outError;`
+- `+ (NSString *)renderObject:(id)object fromContentsOfFile:(NSString *)path options:(GRMustacheTemplateOptions)options error:(NSError **)outError;`
+- `+ (NSString *)renderObject:(id)object fromResource:(NSString *)name bundle:(NSBundle *)bundle options:(GRMustacheTemplateOptions)options error:(NSError **)outError;`
+- `+ (NSString *)renderObject:(id)object fromResource:(NSString *)name withExtension:(NSString *)ext bundle:(NSBundle *)bundle options:(GRMustacheTemplateOptions)options error:(NSError **)outError;`
+
+New GRMustacheTemplateLoader methods:
+
+- `+ (id)templateLoaderWithBaseURL:(NSURL *)url options:(GRMustacheTemplateOptions)options;`
+- `+ (id)templateLoaderWithBaseURL:(NSURL *)url extension:(NSString *)ext options:(GRMustacheTemplateOptions)options;`
+- `+ (id)templateLoaderWithBaseURL:(NSURL *)url extension:(NSString *)ext encoding:(NSStringEncoding)encoding options:(GRMustacheTemplateOptions)options;`
+- `+ (id)templateLoaderWithDirectory:(NSString *)path options:(GRMustacheTemplateOptions)options;`
+- `+ (id)templateLoaderWithDirectory:(NSString *)path extension:(NSString *)ext options:(GRMustacheTemplateOptions)options;`
+- `+ (id)templateLoaderWithDirectory:(NSString *)path extension:(NSString *)ext encoding:(NSStringEncoding)encoding options:(GRMustacheTemplateOptions)options;`
+- `+ (id)templateLoaderWithBundle:(NSBundle *)bundle options:(GRMustacheTemplateOptions)options;`
+- `+ (id)templateLoaderWithBundle:(NSBundle *)bundle extension:(NSString *)ext options:(GRMustacheTemplateOptions)options;`
+- `+ (id)templateLoaderWithBundle:(NSBundle *)bundle extension:(NSString *)ext encoding:(NSStringEncoding)encoding options:(GRMustacheTemplateOptions)options;`
+
## v1.7.4
@@ -46,13 +90,13 @@ The NSUndefinedKeyException silencing activated by the DEBUG macro applies to NS
**Reduced memory footprint**
-New GRMustacheTemplateLoader class methods:
+New GRMustacheTemplateLoader methods:
- `+ (id)templateLoaderWithDirectory:(NSString *)path;`
- `+ (id)templateLoaderWithDirectory:(NSString *)path extension:(NSString *)ext;`
- `+ (id)templateLoaderWithDirectory:(NSString *)path extension:(NSString *)ext encoding:(NSStringEncoding)encoding;`
-Deprecated GRMustacheTemplateLoader class methods (replace `BasePath` with `Directory`):
+Deprecated GRMustacheTemplateLoader methods (replace `BasePath` with `Directory`):
- `+ (id)templateLoaderWithBasePath:(NSString *)path;`
- `+ (id)templateLoaderWithBasePath:(NSString *)path extension:(NSString *)ext;`
@@ -101,7 +145,7 @@ New `GRMustacheTemplate` methods:
- `+ (NSString *)renderObject:(id)object fromContentsOfFile:(NSString *)path error:(NSError **)outError;`
- `+ (id)parseContentsOfFile:(NSString *)path error:(NSError **)outError;`
-New `GRMustacheTemplateLoader` class methods:
+New `GRMustacheTemplateLoader` methods:
- `+ (id)templateLoaderWithBasePath:(NSString *)path;`
- `+ (id)templateLoaderWithBasePath:(NSString *)path extension:(NSString *)ext;`
View
9 include/GRBoolean.h
@@ -21,6 +21,7 @@
// THE SOFTWARE.
#import <Foundation/Foundation.h>
+#import "GRMustacheAvailabilityMacros.h"
/**
The GRYes class provides with a singleton which you can use as a true value
@@ -40,13 +41,13 @@
@returns the GRYes singleton.
@since v1.0.0
*/
-+ (GRYes *)yes __attribute__((deprecated));
++ (GRYes *)yes AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_2;
/**
@returns YES
@since v1.1.0
*/
-- (BOOL)boolValue;
+- (BOOL)boolValue AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_2;
@end
@@ -69,11 +70,11 @@
@returns the GRNo singleton.
@since v1.0.0
*/
-+ (GRNo *)no __attribute__((deprecated));
++ (GRNo *)no AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_2;
/**
@returns NO
@since v1.1.0
*/
-- (BOOL)boolValue;
+- (BOOL)boolValue AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_2;
@end
View
13 include/GRMustache.h
@@ -21,6 +21,7 @@
// THE SOFTWARE.
#import <Foundation/Foundation.h>
+#import "GRMustacheAvailabilityMacros.h"
enum {
GRMustacheTemplateOptionNone = 0,
@@ -58,7 +59,7 @@ typedef struct {
@since v1.0.0
*/
-+ (GRMustacheVersion)version;
++ (GRMustacheVersion)version AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER;
//////////////////////////////////////////////////////////////////////////////////////////
/// @name Handling of boolean properties
@@ -84,7 +85,7 @@ typedef struct {
@see GRNo
@since v1.0.0
*/
-+ (BOOL)strictBooleanMode;
++ (BOOL)strictBooleanMode AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER;
/**
Sets the strict boolean mode of GMustache.
@@ -95,13 +96,13 @@ typedef struct {
@see GRMustache#strictBooleanMode
@since v1.0.0
*/
-+ (void)setStrictBooleanMode:(BOOL)aBool;
++ (void)setStrictBooleanMode:(BOOL)aBool AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER;
-+ (void)preventNSUndefinedKeyExceptionAttack;
++ (void)preventNSUndefinedKeyExceptionAttack AVAILABLE_GRMUSTACHE_VERSION_1_7_AND_LATER;
-+ (GRMustacheTemplateOptions)defaultTemplateOptions;
++ (GRMustacheTemplateOptions)defaultTemplateOptions AVAILABLE_GRMUSTACHE_VERSION_1_8_AND_LATER;
-+ (void)setDefaultTemplateOptions:(GRMustacheTemplateOptions)templateOptions;
++ (void)setDefaultTemplateOptions:(GRMustacheTemplateOptions)templateOptions AVAILABLE_GRMUSTACHE_VERSION_1_8_AND_LATER;
@end
View
891 include/GRMustacheAvailabilityMacros.h
@@ -0,0 +1,891 @@
+//
+// GRMustacheAvailabilityMacros.h
+// GRMustache1-macosx
+//
+// Created by Gwendal Roué on 09/10/11.
+// Copyright (c) 2011 __MyCompanyName__. All rights reserved.
+//
+
+
+
+/*
+ * Set up standard GRMustache versions
+ */
+#define GRMUSTACHE_VERSION_1_0 1000
+#define GRMUSTACHE_VERSION_1_1 1010
+#define GRMUSTACHE_VERSION_1_2 1020
+#define GRMUSTACHE_VERSION_1_3 1030
+#define GRMUSTACHE_VERSION_1_4 1040
+#define GRMUSTACHE_VERSION_1_5 1050
+#define GRMUSTACHE_VERSION_1_6 1060
+#define GRMUSTACHE_VERSION_1_7 1070
+#define GRMUSTACHE_VERSION_1_8 1080
+
+
+
+/*
+ * If min GRMustacheVersion not specified, assume 1.0
+ */
+#ifndef GRMUSTACHE_VERSION_MIN_REQUIRED
+#define GRMUSTACHE_VERSION_MIN_REQUIRED GRMUSTACHE_VERSION_1_0
+#endif
+
+/*
+ * if max GRMustacheVersion not specified, assume largerof(1.8, min)
+ */
+#ifndef GRMUSTACHE_VERSION_MAX_ALLOWED
+#if GRMUSTACHE_VERSION_MIN_REQUIRED > GRMUSTACHE_VERSION_1_8
+#define GRMUSTACHE_VERSION_MAX_ALLOWED GRMUSTACHE_VERSION_MIN_REQUIRED
+#else
+#define GRMUSTACHE_VERSION_MAX_ALLOWED GRMUSTACHE_VERSION_1_8
+#endif
+#endif
+
+
+/*
+ * Error on bad values
+ */
+#if GRMUSTACHE_VERSION_MAX_ALLOWED < GRMUSTACHE_VERSION_MIN_REQUIRED
+#error GRMUSTACHE_VERSION_MAX_ALLOWED must be >= GRMUSTACHE_VERSION_MIN_REQUIRED
+#endif
+#if GRMUSTACHE_VERSION_MIN_REQUIRED < GRMUSTACHE_VERSION_1_0
+#error GRMUSTACHE_VERSION_MIN_REQUIRED must be >= GRMUSTACHE_VERSION_1_0
+#endif
+
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER
+ *
+ * Used on functions introduced in GRMustache 1.0
+ */
+#define AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER_BUT_DEPRECATED
+ *
+ * Used on functions introduced in GRMustache 1.0,
+ * and deprecated in GRMustache 1.0
+ */
+#define AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER_BUT_DEPRECATED DEPRECATED_ATTRIBUTE
+
+/*
+ * DEPRECATED_IN_GRMUSTACHE_VERSION_1_0_AND_LATER
+ *
+ * Used on types deprecated in GRMustache 1.0
+ */
+#define DEPRECATED_IN_GRMUSTACHE_VERSION_1_0_AND_LATER DEPRECATED_ATTRIBUTE
+
+
+
+
+
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER
+ *
+ * Used on declarations introduced in GRMustache 1.1
+ */
+#if GRMUSTACHE_VERSION_MAX_ALLOWED < GRMUSTACHE_VERSION_1_1
+#define AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER UNAVAILABLE_ATTRIBUTE
+#elif GRMUSTACHE_VERSION_MIN_REQUIRED < GRMUSTACHE_VERSION_1_1
+#define AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER WEAK_IMPORT_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER_BUT_DEPRECATED
+ *
+ * Used on declarations introduced in GRMustache 1.1,
+ * and deprecated in GRMustache 1.1
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_1
+#define AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER_BUT_DEPRECATED DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER_BUT_DEPRECATED AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_1
+ *
+ * Used on declarations introduced in GRMustache 1.0,
+ * but later deprecated in GRMustache 1.1
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_1
+#define AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_1 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_1 AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER
+#endif
+
+/*
+ * DEPRECATED_IN_GRMUSTACHE_VERSION_1_1_AND_LATER
+ *
+ * Used on types deprecated in GRMustache 1.1
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_1
+#define DEPRECATED_IN_GRMUSTACHE_VERSION_1_1_AND_LATER DEPRECATED_ATTRIBUTE
+#else
+#define DEPRECATED_IN_GRMUSTACHE_VERSION_1_1_AND_LATER
+#endif
+
+
+
+
+
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER
+ *
+ * Used on declarations introduced in GRMustache 1.1
+ */
+#if GRMUSTACHE_VERSION_MAX_ALLOWED < GRMUSTACHE_VERSION_1_1
+#define AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER UNAVAILABLE_ATTRIBUTE
+#elif GRMUSTACHE_VERSION_MIN_REQUIRED < GRMUSTACHE_VERSION_1_1
+#define AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER WEAK_IMPORT_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER_BUT_DEPRECATED
+ *
+ * Used on declarations introduced in GRMustache 1.1,
+ * and deprecated in GRMustache 1.1
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_1
+#define AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER_BUT_DEPRECATED DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER_BUT_DEPRECATED AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_1
+ *
+ * Used on declarations introduced in GRMustache 1.0,
+ * but later deprecated in GRMustache 1.1
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_1
+#define AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_1 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_1 AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER
+#endif
+
+/*
+ * DEPRECATED_IN_GRMUSTACHE_VERSION_1_1_AND_LATER
+ *
+ * Used on types deprecated in GRMustache 1.1
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_1
+#define DEPRECATED_IN_GRMUSTACHE_VERSION_1_1_AND_LATER DEPRECATED_ATTRIBUTE
+#else
+#define DEPRECATED_IN_GRMUSTACHE_VERSION_1_1_AND_LATER
+#endif
+
+
+
+
+
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_2_AND_LATER
+ *
+ * Used on declarations introduced in GRMustache 1.2
+ */
+#if GRMUSTACHE_VERSION_MAX_ALLOWED < GRMUSTACHE_VERSION_1_2
+#define AVAILABLE_GRMUSTACHE_VERSION_1_2_AND_LATER UNAVAILABLE_ATTRIBUTE
+#elif GRMUSTACHE_VERSION_MIN_REQUIRED < GRMUSTACHE_VERSION_1_2
+#define AVAILABLE_GRMUSTACHE_VERSION_1_2_AND_LATER WEAK_IMPORT_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_2_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_2_AND_LATER_BUT_DEPRECATED
+ *
+ * Used on declarations introduced in GRMustache 1.2,
+ * and deprecated in GRMustache 1.2
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_2
+#define AVAILABLE_GRMUSTACHE_VERSION_1_2_AND_LATER_BUT_DEPRECATED DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_2_AND_LATER_BUT_DEPRECATED AVAILABLE_GRMUSTACHE_VERSION_1_2_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_2
+ *
+ * Used on declarations introduced in GRMustache 1.0,
+ * but later deprecated in GRMustache 1.2
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_2
+#define AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_2 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_2 AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_2
+ *
+ * Used on declarations introduced in GRMustache 1.1,
+ * but later deprecated in GRMustache 1.2
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_2
+#define AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_2 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_2 AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER
+#endif
+
+/*
+ * DEPRECATED_IN_GRMUSTACHE_VERSION_1_2_AND_LATER
+ *
+ * Used on types deprecated in GRMustache 1.2
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_2
+#define DEPRECATED_IN_GRMUSTACHE_VERSION_1_2_AND_LATER DEPRECATED_ATTRIBUTE
+#else
+#define DEPRECATED_IN_GRMUSTACHE_VERSION_1_2_AND_LATER
+#endif
+
+
+
+
+
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER
+ *
+ * Used on declarations introduced in GRMustache 1.3
+ */
+#if GRMUSTACHE_VERSION_MAX_ALLOWED < GRMUSTACHE_VERSION_1_3
+#define AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER UNAVAILABLE_ATTRIBUTE
+#elif GRMUSTACHE_VERSION_MIN_REQUIRED < GRMUSTACHE_VERSION_1_3
+#define AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER WEAK_IMPORT_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER_BUT_DEPRECATED
+ *
+ * Used on declarations introduced in GRMustache 1.3,
+ * and deprecated in GRMustache 1.3
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_3
+#define AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER_BUT_DEPRECATED DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER_BUT_DEPRECATED AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_3
+ *
+ * Used on declarations introduced in GRMustache 1.0,
+ * but later deprecated in GRMustache 1.3
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_3
+#define AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_3 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_3 AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_3
+ *
+ * Used on declarations introduced in GRMustache 1.1,
+ * but later deprecated in GRMustache 1.3
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_3
+#define AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_3 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_3 AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_2_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_3
+ *
+ * Used on declarations introduced in GRMustache 1.2,
+ * but later deprecated in GRMustache 1.3
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_3
+#define AVAILABLE_GRMUSTACHE_VERSION_1_2_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_3 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_2_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_3 AVAILABLE_GRMUSTACHE_VERSION_1_2_AND_LATER
+#endif
+
+/*
+ * DEPRECATED_IN_GRMUSTACHE_VERSION_1_3_AND_LATER
+ *
+ * Used on types deprecated in GRMustache 1.3
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_3
+#define DEPRECATED_IN_GRMUSTACHE_VERSION_1_3_AND_LATER DEPRECATED_ATTRIBUTE
+#else
+#define DEPRECATED_IN_GRMUSTACHE_VERSION_1_3_AND_LATER
+#endif
+
+
+
+
+
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_4_AND_LATER
+ *
+ * Used on declarations introduced in GRMustache 1.4
+ */
+#if GRMUSTACHE_VERSION_MAX_ALLOWED < GRMUSTACHE_VERSION_1_4
+#define AVAILABLE_GRMUSTACHE_VERSION_1_4_AND_LATER UNAVAILABLE_ATTRIBUTE
+#elif GRMUSTACHE_VERSION_MIN_REQUIRED < GRMUSTACHE_VERSION_1_4
+#define AVAILABLE_GRMUSTACHE_VERSION_1_4_AND_LATER WEAK_IMPORT_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_4_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_4_AND_LATER_BUT_DEPRECATED
+ *
+ * Used on declarations introduced in GRMustache 1.4,
+ * and deprecated in GRMustache 1.4
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_4
+#define AVAILABLE_GRMUSTACHE_VERSION_1_4_AND_LATER_BUT_DEPRECATED DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_4_AND_LATER_BUT_DEPRECATED AVAILABLE_GRMUSTACHE_VERSION_1_4_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_4
+ *
+ * Used on declarations introduced in GRMustache 1.0,
+ * but later deprecated in GRMustache 1.4
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_4
+#define AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_4 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_4 AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_4
+ *
+ * Used on declarations introduced in GRMustache 1.1,
+ * but later deprecated in GRMustache 1.4
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_4
+#define AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_4 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_4 AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_2_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_4
+ *
+ * Used on declarations introduced in GRMustache 1.2,
+ * but later deprecated in GRMustache 1.4
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_4
+#define AVAILABLE_GRMUSTACHE_VERSION_1_2_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_4 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_2_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_4 AVAILABLE_GRMUSTACHE_VERSION_1_2_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_4
+ *
+ * Used on declarations introduced in GRMustache 1.3,
+ * but later deprecated in GRMustache 1.4
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_4
+#define AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_4 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_4 AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER
+#endif
+
+/*
+ * DEPRECATED_IN_GRMUSTACHE_VERSION_1_4_AND_LATER
+ *
+ * Used on types deprecated in GRMustache 1.4
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_4
+#define DEPRECATED_IN_GRMUSTACHE_VERSION_1_4_AND_LATER DEPRECATED_ATTRIBUTE
+#else
+#define DEPRECATED_IN_GRMUSTACHE_VERSION_1_4_AND_LATER
+#endif
+
+
+
+
+
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_5_AND_LATER
+ *
+ * Used on declarations introduced in GRMustache 1.5
+ */
+#if GRMUSTACHE_VERSION_MAX_ALLOWED < GRMUSTACHE_VERSION_1_5
+#define AVAILABLE_GRMUSTACHE_VERSION_1_5_AND_LATER UNAVAILABLE_ATTRIBUTE
+#elif GRMUSTACHE_VERSION_MIN_REQUIRED < GRMUSTACHE_VERSION_1_5
+#define AVAILABLE_GRMUSTACHE_VERSION_1_5_AND_LATER WEAK_IMPORT_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_5_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_5_AND_LATER_BUT_DEPRECATED
+ *
+ * Used on declarations introduced in GRMustache 1.5,
+ * and deprecated in GRMustache 1.5
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_5
+#define AVAILABLE_GRMUSTACHE_VERSION_1_5_AND_LATER_BUT_DEPRECATED DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_5_AND_LATER_BUT_DEPRECATED AVAILABLE_GRMUSTACHE_VERSION_1_5_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_5
+ *
+ * Used on declarations introduced in GRMustache 1.0,
+ * but later deprecated in GRMustache 1.5
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_5
+#define AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_5 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_5 AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_5
+ *
+ * Used on declarations introduced in GRMustache 1.1,
+ * but later deprecated in GRMustache 1.5
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_5
+#define AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_5 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_5 AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_2_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_5
+ *
+ * Used on declarations introduced in GRMustache 1.2,
+ * but later deprecated in GRMustache 1.5
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_5
+#define AVAILABLE_GRMUSTACHE_VERSION_1_2_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_5 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_2_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_5 AVAILABLE_GRMUSTACHE_VERSION_1_2_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_5
+ *
+ * Used on declarations introduced in GRMustache 1.3,
+ * but later deprecated in GRMustache 1.5
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_5
+#define AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_5 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_5 AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_4_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_5
+ *
+ * Used on declarations introduced in GRMustache 1.4,
+ * but later deprecated in GRMustache 1.5
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_5
+#define AVAILABLE_GRMUSTACHE_VERSION_1_4_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_5 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_4_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_5 AVAILABLE_GRMUSTACHE_VERSION_1_4_AND_LATER
+#endif
+
+/*
+ * DEPRECATED_IN_GRMUSTACHE_VERSION_1_5_AND_LATER
+ *
+ * Used on types deprecated in GRMustache 1.5
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_5
+#define DEPRECATED_IN_GRMUSTACHE_VERSION_1_5_AND_LATER DEPRECATED_ATTRIBUTE
+#else
+#define DEPRECATED_IN_GRMUSTACHE_VERSION_1_5_AND_LATER
+#endif
+
+
+
+
+
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_6_AND_LATER
+ *
+ * Used on declarations introduced in GRMustache 1.6
+ */
+#if GRMUSTACHE_VERSION_MAX_ALLOWED < GRMUSTACHE_VERSION_1_6
+#define AVAILABLE_GRMUSTACHE_VERSION_1_6_AND_LATER UNAVAILABLE_ATTRIBUTE
+#elif GRMUSTACHE_VERSION_MIN_REQUIRED < GRMUSTACHE_VERSION_1_6
+#define AVAILABLE_GRMUSTACHE_VERSION_1_6_AND_LATER WEAK_IMPORT_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_6_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_6_AND_LATER_BUT_DEPRECATED
+ *
+ * Used on declarations introduced in GRMustache 1.6,
+ * and deprecated in GRMustache 1.6
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_6
+#define AVAILABLE_GRMUSTACHE_VERSION_1_6_AND_LATER_BUT_DEPRECATED DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_6_AND_LATER_BUT_DEPRECATED AVAILABLE_GRMUSTACHE_VERSION_1_6_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_6
+ *
+ * Used on declarations introduced in GRMustache 1.0,
+ * but later deprecated in GRMustache 1.6
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_6
+#define AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_6 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_6 AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_6
+ *
+ * Used on declarations introduced in GRMustache 1.1,
+ * but later deprecated in GRMustache 1.6
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_6
+#define AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_6 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_6 AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_2_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_6
+ *
+ * Used on declarations introduced in GRMustache 1.2,
+ * but later deprecated in GRMustache 1.6
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_6
+#define AVAILABLE_GRMUSTACHE_VERSION_1_2_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_6 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_2_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_6 AVAILABLE_GRMUSTACHE_VERSION_1_2_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_6
+ *
+ * Used on declarations introduced in GRMustache 1.3,
+ * but later deprecated in GRMustache 1.6
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_6
+#define AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_6 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_6 AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_4_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_6
+ *
+ * Used on declarations introduced in GRMustache 1.4,
+ * but later deprecated in GRMustache 1.6
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_6
+#define AVAILABLE_GRMUSTACHE_VERSION_1_4_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_6 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_4_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_6 AVAILABLE_GRMUSTACHE_VERSION_1_4_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_5_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_6
+ *
+ * Used on declarations introduced in GRMustache 1.5,
+ * but later deprecated in GRMustache 1.6
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_6
+#define AVAILABLE_GRMUSTACHE_VERSION_1_5_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_6 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_5_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_6 AVAILABLE_GRMUSTACHE_VERSION_1_5_AND_LATER
+#endif
+
+/*
+ * DEPRECATED_IN_GRMUSTACHE_VERSION_1_6_AND_LATER
+ *
+ * Used on types deprecated in GRMustache 1.6
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_6
+#define DEPRECATED_IN_GRMUSTACHE_VERSION_1_6_AND_LATER DEPRECATED_ATTRIBUTE
+#else
+#define DEPRECATED_IN_GRMUSTACHE_VERSION_1_6_AND_LATER
+#endif
+
+
+
+
+
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_7_AND_LATER
+ *
+ * Used on declarations introduced in GRMustache 1.7
+ */
+#if GRMUSTACHE_VERSION_MAX_ALLOWED < GRMUSTACHE_VERSION_1_7
+#define AVAILABLE_GRMUSTACHE_VERSION_1_7_AND_LATER UNAVAILABLE_ATTRIBUTE
+#elif GRMUSTACHE_VERSION_MIN_REQUIRED < GRMUSTACHE_VERSION_1_7
+#define AVAILABLE_GRMUSTACHE_VERSION_1_7_AND_LATER WEAK_IMPORT_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_7_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_7_AND_LATER_BUT_DEPRECATED
+ *
+ * Used on declarations introduced in GRMustache 1.7,
+ * and deprecated in GRMustache 1.7
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_7
+#define AVAILABLE_GRMUSTACHE_VERSION_1_7_AND_LATER_BUT_DEPRECATED DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_7_AND_LATER_BUT_DEPRECATED AVAILABLE_GRMUSTACHE_VERSION_1_7_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_7
+ *
+ * Used on declarations introduced in GRMustache 1.0,
+ * but later deprecated in GRMustache 1.7
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_7
+#define AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_7 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_7 AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_7
+ *
+ * Used on declarations introduced in GRMustache 1.1,
+ * but later deprecated in GRMustache 1.7
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_7
+#define AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_7 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_7 AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_2_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_7
+ *
+ * Used on declarations introduced in GRMustache 1.2,
+ * but later deprecated in GRMustache 1.7
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_7
+#define AVAILABLE_GRMUSTACHE_VERSION_1_2_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_7 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_2_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_7 AVAILABLE_GRMUSTACHE_VERSION_1_2_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_7
+ *
+ * Used on declarations introduced in GRMustache 1.3,
+ * but later deprecated in GRMustache 1.7
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_7
+#define AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_7 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_7 AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_4_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_7
+ *
+ * Used on declarations introduced in GRMustache 1.4,
+ * but later deprecated in GRMustache 1.7
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_7
+#define AVAILABLE_GRMUSTACHE_VERSION_1_4_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_7 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_4_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_7 AVAILABLE_GRMUSTACHE_VERSION_1_4_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_5_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_7
+ *
+ * Used on declarations introduced in GRMustache 1.5,
+ * but later deprecated in GRMustache 1.7
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_7
+#define AVAILABLE_GRMUSTACHE_VERSION_1_5_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_7 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_5_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_7 AVAILABLE_GRMUSTACHE_VERSION_1_5_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_6_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_7
+ *
+ * Used on declarations introduced in GRMustache 1.6,
+ * but later deprecated in GRMustache 1.7
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_7
+#define AVAILABLE_GRMUSTACHE_VERSION_1_6_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_7 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_6_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_7 AVAILABLE_GRMUSTACHE_VERSION_1_6_AND_LATER
+#endif
+
+/*
+ * DEPRECATED_IN_GRMUSTACHE_VERSION_1_7_AND_LATER
+ *
+ * Used on types deprecated in GRMustache 1.7
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_7
+#define DEPRECATED_IN_GRMUSTACHE_VERSION_1_7_AND_LATER DEPRECATED_ATTRIBUTE
+#else
+#define DEPRECATED_IN_GRMUSTACHE_VERSION_1_7_AND_LATER
+#endif
+
+
+
+
+
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_8_AND_LATER
+ *
+ * Used on declarations introduced in GRMustache 1.8
+ */
+#if GRMUSTACHE_VERSION_MAX_ALLOWED < GRMUSTACHE_VERSION_1_8
+#define AVAILABLE_GRMUSTACHE_VERSION_1_8_AND_LATER UNAVAILABLE_ATTRIBUTE
+#elif GRMUSTACHE_VERSION_MIN_REQUIRED < GRMUSTACHE_VERSION_1_8
+#define AVAILABLE_GRMUSTACHE_VERSION_1_8_AND_LATER WEAK_IMPORT_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_8_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_8_AND_LATER_BUT_DEPRECATED
+ *
+ * Used on declarations introduced in GRMustache 1.8,
+ * and deprecated in GRMustache 1.8
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_8
+#define AVAILABLE_GRMUSTACHE_VERSION_1_8_AND_LATER_BUT_DEPRECATED DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_8_AND_LATER_BUT_DEPRECATED AVAILABLE_GRMUSTACHE_VERSION_1_8_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_8
+ *
+ * Used on declarations introduced in GRMustache 1.0,
+ * but later deprecated in GRMustache 1.8
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_8
+#define AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_8 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_8 AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_8
+ *
+ * Used on declarations introduced in GRMustache 1.1,
+ * but later deprecated in GRMustache 1.8
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_8
+#define AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_8 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_8 AVAILABLE_GRMUSTACHE_VERSION_1_1_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_2_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_8
+ *
+ * Used on declarations introduced in GRMustache 1.2,
+ * but later deprecated in GRMustache 1.8
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_8
+#define AVAILABLE_GRMUSTACHE_VERSION_1_2_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_8 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_2_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_8 AVAILABLE_GRMUSTACHE_VERSION_1_2_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_8
+ *
+ * Used on declarations introduced in GRMustache 1.3,
+ * but later deprecated in GRMustache 1.8
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_8
+#define AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_8 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_8 AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_4_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_8
+ *
+ * Used on declarations introduced in GRMustache 1.4,
+ * but later deprecated in GRMustache 1.8
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_8
+#define AVAILABLE_GRMUSTACHE_VERSION_1_4_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_8 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_4_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_8 AVAILABLE_GRMUSTACHE_VERSION_1_4_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_5_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_8
+ *
+ * Used on declarations introduced in GRMustache 1.5,
+ * but later deprecated in GRMustache 1.8
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_8
+#define AVAILABLE_GRMUSTACHE_VERSION_1_5_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_8 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_5_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_8 AVAILABLE_GRMUSTACHE_VERSION_1_5_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_6_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_8
+ *
+ * Used on declarations introduced in GRMustache 1.6,
+ * but later deprecated in GRMustache 1.8
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_8
+#define AVAILABLE_GRMUSTACHE_VERSION_1_6_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_8 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_6_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_8 AVAILABLE_GRMUSTACHE_VERSION_1_6_AND_LATER
+#endif
+
+/*
+ * AVAILABLE_GRMUSTACHE_VERSION_1_7_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_8
+ *
+ * Used on declarations introduced in GRMustache 1.7,
+ * but later deprecated in GRMustache 1.8
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_8
+#define AVAILABLE_GRMUSTACHE_VERSION_1_7_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_8 DEPRECATED_ATTRIBUTE
+#else
+#define AVAILABLE_GRMUSTACHE_VERSION_1_7_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_8 AVAILABLE_GRMUSTACHE_VERSION_1_7_AND_LATER
+#endif
+
+/*
+ * DEPRECATED_IN_GRMUSTACHE_VERSION_1_8_AND_LATER
+ *
+ * Used on types deprecated in GRMustache 1.8
+ */
+#if GRMUSTACHE_VERSION_MIN_REQUIRED >= GRMUSTACHE_VERSION_1_8
+#define DEPRECATED_IN_GRMUSTACHE_VERSION_1_8_AND_LATER DEPRECATED_ATTRIBUTE
+#else
+#define DEPRECATED_IN_GRMUSTACHE_VERSION_1_8_AND_LATER
+#endif
+
+
View
10 include/GRMustacheContext.h
@@ -21,15 +21,15 @@
// THE SOFTWARE.
#import <Foundation/Foundation.h>
-
+#import "GRMustacheAvailabilityMacros.h"
@interface GRMustacheContext: NSObject {
@private
id object;
GRMustacheContext *parent;
}
-+ (id)contextWithObject:(id)object __attribute__((deprecated));
-+ (id)contextWithObjects:(id)object, ... __attribute__((deprecated));
-- (GRMustacheContext *)contextByAddingObject:(id)object __attribute__((deprecated));
-- (id)valueForKey:(NSString *)key;
++ (id)contextWithObject:(id)object AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_5;
++ (id)contextWithObjects:(id)object, ... AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_5;
+- (GRMustacheContext *)contextByAddingObject:(id)object AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_5;
+- (id)valueForKey:(NSString *)key AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER;
@end
View
7 include/GRMustacheError.h
@@ -21,14 +21,15 @@
// THE SOFTWARE.
#import <Foundation/Foundation.h>
+#import "GRMustacheAvailabilityMacros.h"
/**
The domain of a GRMustache-generated NSError
@since v1.0.0
*/
-extern NSString* const GRMustacheErrorDomain;
+extern NSString* const GRMustacheErrorDomain AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER;
/**
When a GRMustache-generated NSError has the code GRMustacheErrorCodeParseError,
@@ -37,7 +38,7 @@ extern NSString* const GRMustacheErrorDomain;
@since v1.0.0
*/
-extern NSString* const GRMustacheErrorLine;
+extern NSString* const GRMustacheErrorLine AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER;
/**
The codes of a GRMustache-generated NSError
@@ -58,6 +59,6 @@ typedef enum {
@since v1.0.0
*/
GRMustacheErrorCodeTemplateNotFound,
-} GRMustacheErrorCode;
+} GRMustacheErrorCode AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER;
View
11 include/GRMustacheLambda.h
@@ -22,6 +22,7 @@
#import <Foundation/Foundation.h>
#import "GRMustacheEnvironment.h"
+#import "GRMustacheAvailabilityMacros.h"
@class GRMustacheSection;
@class GRMustacheContext;
@@ -30,15 +31,13 @@
@private
NSString *(^block)(GRMustacheSection* section, id context);
}
-+ (id)helperWithBlock:(NSString *(^)(GRMustacheSection* section, id context))block;
++ (id)helperWithBlock:(NSString *(^)(GRMustacheSection* section, id context))block AVAILABLE_GRMUSTACHE_VERSION_1_5_AND_LATER;
@end
-// =================== DEPRECATED STUFF BELOW ===================
-
typedef NSString *(^GRMustacheRenderingBlock)(GRMustacheSection*, GRMustacheContext*);
-id GRMustacheLambdaBlockMake(GRMustacheRenderingBlock block) __attribute__((deprecated));
+id GRMustacheLambdaBlockMake(GRMustacheRenderingBlock block) AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_5;
typedef NSString *(^GRMustacheRenderer)(id object);
-typedef id GRMustacheLambda __attribute__((deprecated));
-GRMustacheLambda GRMustacheLambdaMake(NSString *(^block)(NSString *(^)(id object), id, NSString *)) __attribute__((deprecated));
+typedef id GRMustacheLambda;
+GRMustacheLambda GRMustacheLambdaMake(NSString *(^block)(NSString *(^)(id object), id, NSString *)) AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_3;
#endif
View
7 include/GRMustacheSection.h
@@ -21,6 +21,7 @@
// THE SOFTWARE.
#import <Foundation/Foundation.h>
+#import "GRMustacheAvailabilityMacros.h"
@interface GRMustacheSection: NSObject {
@@ -31,7 +32,7 @@
BOOL inverted;
NSArray *elems;
}
-@property (nonatomic, readonly) NSString *templateString;
+@property (nonatomic, readonly) NSString *templateString AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER;
/**
Renders a template with a context object.
@@ -41,7 +42,7 @@
@since v1.3.0
*/
-- (NSString *)renderObject:(id)object;
+- (NSString *)renderObject:(id)object AVAILABLE_GRMUSTACHE_VERSION_1_3_AND_LATER;
/**
Renders a template with context objects.
@@ -51,6 +52,6 @@
@since v1.5.0
*/
-- (NSString *)renderObjects:(id)object, ...;
+- (NSString *)renderObjects:(id)object, ... AVAILABLE_GRMUSTACHE_VERSION_1_5_AND_LATER;
@end
View
49 include/GRMustacheTemplate.h
@@ -21,6 +21,7 @@
// THE SOFTWARE.
#import <Foundation/Foundation.h>
+#import "GRMustacheAvailabilityMacros.h"
#import "GRMustacheEnvironment.h"
/**
@@ -34,8 +35,6 @@
id contextStrategy;
}
-+ (id)templateWithOptions:(GRMustacheTemplateOptions)options;
-
//////////////////////////////////////////////////////////////////////////////////////////
/// @name Parsing
//////////////////////////////////////////////////////////////////////////////////////////
@@ -50,8 +49,8 @@
@since v1.0.0
*/
-+ (id)parseString:(NSString *)templateString error:(NSError **)outError;
-+ (id)parseString:(NSString *)templateString options:(GRMustacheTemplateOptions)options error:(NSError **)outError;
++ (id)parseString:(NSString *)templateString error:(NSError **)outError AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER;
++ (id)parseString:(NSString *)templateString options:(GRMustacheTemplateOptions)options error:(NSError **)outError AVAILABLE_GRMUSTACHE_VERSION_1_8_AND_LATER;
#if !TARGET_OS_IPHONE || GRMUSTACHE_IPHONE_OS_VERSION_MAX_ALLOWED >= 40000
/**
@@ -66,8 +65,8 @@
@since v1.0.0
*/
-+ (id)parseContentsOfURL:(NSURL *)url error:(NSError **)outError;
-+ (id)parseContentsOfURL:(NSURL *)url options:(GRMustacheTemplateOptions)options error:(NSError **)outError;
++ (id)parseContentsOfURL:(NSURL *)url error:(NSError **)outError AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER;
++ (id)parseContentsOfURL:(NSURL *)url options:(GRMustacheTemplateOptions)options error:(NSError **)outError AVAILABLE_GRMUSTACHE_VERSION_1_8_AND_LATER;
#endif
/**
@@ -82,8 +81,8 @@
@since v1.4.0
*/
-+ (id)parseContentsOfFile:(NSString *)path error:(NSError **)outError;
-+ (id)parseContentsOfFile:(NSString *)path options:(GRMustacheTemplateOptions)options error:(NSError **)outError;
++ (id)parseContentsOfFile:(NSString *)path error:(NSError **)outError AVAILABLE_GRMUSTACHE_VERSION_1_4_AND_LATER;
++ (id)parseContentsOfFile:(NSString *)path options:(GRMustacheTemplateOptions)options error:(NSError **)outError AVAILABLE_GRMUSTACHE_VERSION_1_8_AND_LATER;
/**
Parses a bundle resource template, and returns a compiled template.
@@ -100,8 +99,8 @@
@since v1.0.0
*/
-+ (id)parseResource:(NSString *)name bundle:(NSBundle *)bundle error:(NSError **)outError;
-+ (id)parseResource:(NSString *)name bundle:(NSBundle *)bundle options:(GRMustacheTemplateOptions)options error:(NSError **)outError;
++ (id)parseResource:(NSString *)name bundle:(NSBundle *)bundle error:(NSError **)outError AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER;
++ (id)parseResource:(NSString *)name bundle:(NSBundle *)bundle options:(GRMustacheTemplateOptions)options error:(NSError **)outError AVAILABLE_GRMUSTACHE_VERSION_1_8_AND_LATER;
/**
Parses a bundle resource template, and returns a compiled template.
@@ -119,8 +118,8 @@
@since v1.0.0
*/
-+ (id)parseResource:(NSString *)name withExtension:(NSString *)ext bundle:(NSBundle *)bundle error:(NSError **)outError;
-+ (id)parseResource:(NSString *)name withExtension:(NSString *)ext bundle:(NSBundle *)bundle options:(GRMustacheTemplateOptions)options error:(NSError **)outError;
++ (id)parseResource:(NSString *)name withExtension:(NSString *)ext bundle:(NSBundle *)bundle error:(NSError **)outError AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER;
++ (id)parseResource:(NSString *)name withExtension:(NSString *)ext bundle:(NSBundle *)bundle options:(GRMustacheTemplateOptions)options error:(NSError **)outError AVAILABLE_GRMUSTACHE_VERSION_1_8_AND_LATER;
//////////////////////////////////////////////////////////////////////////////////////////
@@ -137,8 +136,8 @@
@since v1.0.0
*/
-+ (NSString *)renderObject:(id)object fromString:(NSString *)templateString error:(NSError **)outError;
-+ (NSString *)renderObject:(id)object fromString:(NSString *)templateString options:(GRMustacheTemplateOptions)options error:(NSError **)outError;
++ (NSString *)renderObject:(id)object fromString:(NSString *)templateString error:(NSError **)outError AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER;
++ (NSString *)renderObject:(id)object fromString:(NSString *)templateString options:(GRMustacheTemplateOptions)options error:(NSError **)outError AVAILABLE_GRMUSTACHE_VERSION_1_8_AND_LATER;
#if !TARGET_OS_IPHONE || GRMUSTACHE_IPHONE_OS_VERSION_MAX_ALLOWED >= 40000
/**
@@ -154,8 +153,8 @@
@since v1.0.0
*/
-+ (NSString *)renderObject:(id)object fromContentsOfURL:(NSURL *)url error:(NSError **)outError;
-+ (NSString *)renderObject:(id)object fromContentsOfURL:(NSURL *)url options:(GRMustacheTemplateOptions)options error:(NSError **)outError;
++ (NSString *)renderObject:(id)object fromContentsOfURL:(NSURL *)url error:(NSError **)outError AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER;
++ (NSString *)renderObject:(id)object fromContentsOfURL:(NSURL *)url options:(GRMustacheTemplateOptions)options error:(NSError **)outError AVAILABLE_GRMUSTACHE_VERSION_1_8_AND_LATER;
#endif
/**
@@ -171,8 +170,8 @@
@since v1.4.0
*/
-+ (NSString *)renderObject:(id)object fromContentsOfFile:(NSString *)path error:(NSError **)outError;
-+ (NSString *)renderObject:(id)object fromContentsOfFile:(NSString *)path options:(GRMustacheTemplateOptions)options error:(NSError **)outError;
++ (NSString *)renderObject:(id)object fromContentsOfFile:(NSString *)path error:(NSError **)outError AVAILABLE_GRMUSTACHE_VERSION_1_4_AND_LATER;
++ (NSString *)renderObject:(id)object fromContentsOfFile:(NSString *)path options:(GRMustacheTemplateOptions)options error:(NSError **)outError AVAILABLE_GRMUSTACHE_VERSION_1_8_AND_LATER;
/**
Renders a context object from a bundle resource template.
@@ -190,8 +189,8 @@
@since v1.0.0
*/
-+ (NSString *)renderObject:(id)object fromResource:(NSString *)name bundle:(NSBundle *)bundle error:(NSError **)outError;
-+ (NSString *)renderObject:(id)object fromResource:(NSString *)name bundle:(NSBundle *)bundle options:(GRMustacheTemplateOptions)options error:(NSError **)outError;
++ (NSString *)renderObject:(id)object fromResource:(NSString *)name bundle:(NSBundle *)bundle error:(NSError **)outError AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER;
++ (NSString *)renderObject:(id)object fromResource:(NSString *)name bundle:(NSBundle *)bundle options:(GRMustacheTemplateOptions)options error:(NSError **)outError AVAILABLE_GRMUSTACHE_VERSION_1_8_AND_LATER;
/**
Renders a context object from a bundle resource template.
@@ -210,8 +209,8 @@
@since v1.0.0
*/
-+ (NSString *)renderObject:(id)object fromResource:(NSString *)name withExtension:(NSString *)ext bundle:(NSBundle *)bundle error:(NSError **)outError;
-+ (NSString *)renderObject:(id)object fromResource:(NSString *)name withExtension:(NSString *)ext bundle:(NSBundle *)bundle options:(GRMustacheTemplateOptions)options error:(NSError **)outError;
++ (NSString *)renderObject:(id)object fromResource:(NSString *)name withExtension:(NSString *)ext bundle:(NSBundle *)bundle error:(NSError **)outError AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER;
++ (NSString *)renderObject:(id)object fromResource:(NSString *)name withExtension:(NSString *)ext bundle:(NSBundle *)bundle options:(GRMustacheTemplateOptions)options error:(NSError **)outError AVAILABLE_GRMUSTACHE_VERSION_1_8_AND_LATER;
/**
Renders a template with a context object.
@@ -221,7 +220,7 @@
@since v1.0.0
*/
-- (NSString *)renderObject:(id)object;
+- (NSString *)renderObject:(id)object AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER;
/**
Renders a template with context objects.
@@ -231,7 +230,7 @@
@since v1.5.0
*/
-- (NSString *)renderObjects:(id)object, ...;
+- (NSString *)renderObjects:(id)object, ... AVAILABLE_GRMUSTACHE_VERSION_1_5_AND_LATER;
/**
Renders a template without any context object for interpreting Mustache tags.
@@ -240,6 +239,6 @@
@since v1.0.0
*/
-- (NSString *)render;
+- (NSString *)render AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER;
@end
View
46 include/GRMustacheTemplateLoader.h
@@ -48,8 +48,8 @@
@since v1.0.0
*/
-+ (id)templateLoaderWithBaseURL:(NSURL *)url;
-+ (id)templateLoaderWithBaseURL:(NSURL *)url options:(GRMustacheTemplateOptions)options;
++ (id)templateLoaderWithBaseURL:(NSURL *)url AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER;
++ (id)templateLoaderWithBaseURL:(NSURL *)url options:(GRMustacheTemplateOptions)options AVAILABLE_GRMUSTACHE_VERSION_1_8_AND_LATER;
#endif
/**
@@ -61,7 +61,7 @@
@since v1.4.0
*/
-+ (id)templateLoaderWithBasePath:(NSString *)path __attribute__((deprecated));
++ (id)templateLoaderWithBasePath:(NSString *)path AVAILABLE_GRMUSTACHE_VERSION_1_4_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_6;
/**
@returns A GRMustacheTemplateLoader instance
@@ -72,8 +72,8 @@
@since v1.6.0
*/
-+ (id)templateLoaderWithDirectory:(NSString *)path;
-+ (id)templateLoaderWithDirectory:(NSString *)path options:(GRMustacheTemplateOptions)options;
++ (id)templateLoaderWithDirectory:(NSString *)path AVAILABLE_GRMUSTACHE_VERSION_1_6_AND_LATER;
++ (id)templateLoaderWithDirectory:(NSString *)path options:(GRMustacheTemplateOptions)options AVAILABLE_GRMUSTACHE_VERSION_1_8_AND_LATER;
#if !TARGET_OS_IPHONE || GRMUSTACHE_IPHONE_OS_VERSION_MAX_ALLOWED >= 40000
/**
@@ -90,8 +90,8 @@
@since v1.0.0
*/
-+ (id)templateLoaderWithBaseURL:(NSURL *)url extension:(NSString *)ext;
-+ (id)templateLoaderWithBaseURL:(NSURL *)url extension:(NSString *)ext options:(GRMustacheTemplateOptions)options;
++ (id)templateLoaderWithBaseURL:(NSURL *)url extension:(NSString *)ext AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER;
++ (id)templateLoaderWithBaseURL:(NSURL *)url extension:(NSString *)ext options:(GRMustacheTemplateOptions)options AVAILABLE_GRMUSTACHE_VERSION_1_8_AND_LATER;
#endif
/**
@@ -108,7 +108,7 @@
@since v1.4.0
*/
-+ (id)templateLoaderWithBasePath:(NSString *)path extension:(NSString *)ext __attribute__((deprecated));
++ (id)templateLoaderWithBasePath:(NSString *)path extension:(NSString *)ext __attribute__((deprecated)) AVAILABLE_GRMUSTACHE_VERSION_1_4_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_6;
/**
@returns A GRMustacheTemplateLoader instance
@@ -124,8 +124,8 @@
@since v1.6.0
*/
-+ (id)templateLoaderWithDirectory:(NSString *)path extension:(NSString *)ext;
-+ (id)templateLoaderWithDirectory:(NSString *)path extension:(NSString *)ext options:(GRMustacheTemplateOptions)options;
++ (id)templateLoaderWithDirectory:(NSString *)path extension:(NSString *)ext AVAILABLE_GRMUSTACHE_VERSION_1_6_AND_LATER;
++ (id)templateLoaderWithDirectory:(NSString *)path extension:(NSString *)ext options:(GRMustacheTemplateOptions)options AVAILABLE_GRMUSTACHE_VERSION_1_8_AND_LATER;
#if !TARGET_OS_IPHONE || GRMUSTACHE_IPHONE_OS_VERSION_MAX_ALLOWED >= 40000
/**
@@ -143,8 +143,8 @@
@since v1.0.0
*/
-+ (id)templateLoaderWithBaseURL:(NSURL *)url extension:(NSString *)ext encoding:(NSStringEncoding)encoding;
-+ (id)templateLoaderWithBaseURL:(NSURL *)url extension:(NSString *)ext encoding:(NSStringEncoding)encoding options:(GRMustacheTemplateOptions)options;
++ (id)templateLoaderWithBaseURL:(NSURL *)url extension:(NSString *)ext encoding:(NSStringEncoding)encoding AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER;
++ (id)templateLoaderWithBaseURL:(NSURL *)url extension:(NSString *)ext encoding:(NSStringEncoding)encoding options:(GRMustacheTemplateOptions)options AVAILABLE_GRMUSTACHE_VERSION_1_8_AND_LATER;
#endif
/**
@@ -162,7 +162,7 @@
@since v1.4.0
*/
-+ (id)templateLoaderWithBasePath:(NSString *)path extension:(NSString *)ext encoding:(NSStringEncoding)encoding __attribute__((deprecated));
++ (id)templateLoaderWithBasePath:(NSString *)path extension:(NSString *)ext encoding:(NSStringEncoding)encoding AVAILABLE_GRMUSTACHE_VERSION_1_4_AND_LATER_BUT_DEPRECATED_IN_GRMUSTACHE_VERSION_1_6;
/**
@returns A GRMustacheTemplateLoader instance
@@ -179,8 +179,8 @@
@since v1.4.0
*/
-+ (id)templateLoaderWithDirectory:(NSString *)path extension:(NSString *)ext encoding:(NSStringEncoding)encoding;
-+ (id)templateLoaderWithDirectory:(NSString *)path extension:(NSString *)ext encoding:(NSStringEncoding)encoding options:(GRMustacheTemplateOptions)options;
++ (id)templateLoaderWithDirectory:(NSString *)path extension:(NSString *)ext encoding:(NSStringEncoding)encoding AVAILABLE_GRMUSTACHE_VERSION_1_4_AND_LATER;
++ (id)templateLoaderWithDirectory:(NSString *)path extension:(NSString *)ext encoding:(NSStringEncoding)encoding options:(GRMustacheTemplateOptions)options AVAILABLE_GRMUSTACHE_VERSION_1_8_AND_LATER;
/**
@returns A GRMustacheTemplateLoader instance
@@ -191,8 +191,8 @@
@since v1.0.0
*/
-+ (id)templateLoaderWithBundle:(NSBundle *)bundle;
-+ (id)templateLoaderWithBundle:(NSBundle *)bundle options:(GRMustacheTemplateOptions)options;
++ (id)templateLoaderWithBundle:(NSBundle *)bundle AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER;
++ (id)templateLoaderWithBundle:(NSBundle *)bundle options:(GRMustacheTemplateOptions)options AVAILABLE_GRMUSTACHE_VERSION_1_8_AND_LATER;
/**
@returns A GRMustacheTemplateLoader instance
@@ -206,8 +206,8 @@
@since v1.0.0
*/
-+ (id)templateLoaderWithBundle:(NSBundle *)bundle extension:(NSString *)ext;
-+ (id)templateLoaderWithBundle:(NSBundle *)bundle extension:(NSString *)ext options:(GRMustacheTemplateOptions)options;
++ (id)templateLoaderWithBundle:(NSBundle *)bundle extension:(NSString *)ext AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER;
++ (id)templateLoaderWithBundle:(NSBundle *)bundle extension:(NSString *)ext options:(GRMustacheTemplateOptions)options AVAILABLE_GRMUSTACHE_VERSION_1_8_AND_LATER;
/**
@returns A GRMustacheTemplateLoader instance
@@ -222,8 +222,8 @@
@since v1.0.0
*/
-+ (id)templateLoaderWithBundle:(NSBundle *)bundle extension:(NSString *)ext encoding:(NSStringEncoding)encoding;
-+ (id)templateLoaderWithBundle:(NSBundle *)bundle extension:(NSString *)ext encoding:(NSStringEncoding)encoding options:(GRMustacheTemplateOptions)options;
++ (id)templateLoaderWithBundle:(NSBundle *)bundle extension:(NSString *)ext encoding:(NSStringEncoding)encoding AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER;
++ (id)templateLoaderWithBundle:(NSBundle *)bundle extension:(NSString *)ext encoding:(NSStringEncoding)encoding options:(GRMustacheTemplateOptions)options AVAILABLE_GRMUSTACHE_VERSION_1_8_AND_LATER;
/**
@returns a GRMustacheTemplate instance
@@ -235,7 +235,7 @@
@since v1.0.0
*/
-- (GRMustacheTemplate *)parseTemplateNamed:(NSString *)name error:(NSError **)outError;
+- (GRMustacheTemplate *)parseTemplateNamed:(NSString *)name error:(NSError **)outError AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER;
/**
@returns a GRMustacheTemplate instance
@@ -247,5 +247,5 @@
@since v1.0.0
*/
-- (GRMustacheTemplate *)parseString:(NSString *)templateString error:(NSError **)outError;
+- (GRMustacheTemplate *)parseString:(NSString *)templateString error:(NSError **)outError AVAILABLE_GRMUSTACHE_VERSION_1_0_AND_LATER;
@end
View
2 include/GRMustacheVersion.h
@@ -40,5 +40,5 @@
@since v1.0.0
*/
-#define GRMUSTACHE_PATCH_VERSION 1
+#define GRMUSTACHE_PATCH_VERSION 2
View
BIN lib/libGRMustache1-ios3.a
Binary file not shown.
View
BIN lib/libGRMustache1-ios4.a
Binary file not shown.
View
BIN lib/libGRMustache1-macosx10.6.a
Binary file not shown.

0 comments on commit 8abbac9

Please sign in to comment.