@end
+/*
+ Notes
+
+ In LSExtendedSearchCommand this is bound to the 'content' of EOSQLQualifier
+ and contains an array like:
+
+ "(", "(", "(", LOWER, "(", { allowsNull=Y; columnName=name; width=50;...},
+ ...
+ " = ", 0, ")", ")"
+
+ so it seems to be a stream of tokens and an EOAttribute mixed in for column
+ keys.
+
+ Apparently only EOSQLExpression supports the 'EOExpressionContext'?
+*/
@interface EOExpressionArray : NSObject < NSMutableCopying >
{
@interface NSObject (EOExpression)
-- (NSString*)expressionValueForContext:(id<EOExpressionContext>)context;
+- (NSString *)expressionValueForContext:(id<EOExpressionContext>)context;
@end
#endif /* __EOExpressionArray_h__ */
#import <Foundation/NSDictionary.h>
#import <Foundation/NSArray.h>
-#import <GDLAccess/EOExpressionArray.h>
-#import <GDLAccess/EOJoinTypes.h>
+#include <GDLAccess/EOExpressionArray.h>
+#include <GDLAccess/EOJoinTypes.h>
-@class EOAdaptor;
-@class EOAdaptorChannel;
-@class EOEntity;
-@class EOSQLQualifier;
+/*
+ EOSQLExpression
+
+ TODO: document
+
+ Apparently the only object which implements EOExpressionContext?
+*/
+
+@class EOAdaptor, EOAdaptorChannel, EOEntity, EOSQLQualifier;
extern NSString *EOBindVariableNameKey;
extern NSString *EOBindVariablePlaceHolderKey;
#import <GDLAccess/EOExpressionArray.h>
+/*
+ EOSQLQualifier
+
+ TODO: document
+
+ Note: the expression context is the EOSQLExpression.
+*/
+
@class NSDictionary, NSString, NSMutableSet;
@class EOEntity, EORelationship, EOExpressionArray, EOSQLQualifier;
@class EOSQLExpression;