aboutsummaryrefslogtreecommitdiff
path: root/src/sqliteInt.h
diff options
context:
space:
mode:
authordrh <drh@noemail.net>2012-05-21 19:11:25 +0000
committerdrh <drh@noemail.net>2012-05-21 19:11:25 +0000
commita51009b251eca47fae7ffa7a285bcd414b893d97 (patch)
tree4b88682ba27beeb72c8683b025d233f75f3dda96 /src/sqliteInt.h
parent3608f177babb73cf58166f4c529a8bdb00fb3a41 (diff)
downloadsqlite-a51009b251eca47fae7ffa7a285bcd414b893d97.tar.gz
sqlite-a51009b251eca47fae7ffa7a285bcd414b893d97.zip
Convert the NameContext object from using u8 booleans to using individual
bits in a single u8 as its booleans. This change might become a basis for a fix for [c2ad16f997ee9c]. FossilOrigin-Name: 722260969306778029b738402f22e3c154dd77a1
Diffstat (limited to 'src/sqliteInt.h')
-rw-r--r--src/sqliteInt.h15
1 files changed, 10 insertions, 5 deletions
diff --git a/src/sqliteInt.h b/src/sqliteInt.h
index cb178ff97..e56edcab7 100644
--- a/src/sqliteInt.h
+++ b/src/sqliteInt.h
@@ -2006,16 +2006,21 @@ struct NameContext {
Parse *pParse; /* The parser */
SrcList *pSrcList; /* One or more tables used to resolve names */
ExprList *pEList; /* Optional list of named expressions */
- int nRef; /* Number of names resolved by this context */
- int nErr; /* Number of errors encountered while resolving names */
- u8 allowAgg; /* Aggregate functions allowed here */
- u8 hasAgg; /* True if aggregates are seen */
- u8 isCheck; /* True if resolving names in a CHECK constraint */
AggInfo *pAggInfo; /* Information about aggregates at this level */
NameContext *pNext; /* Next outer name context. NULL for outermost */
+ int nRef; /* Number of names resolved by this context */
+ int nErr; /* Number of errors encountered while resolving names */
+ u8 ncFlags; /* Zero or more NC_* flags defined below */
};
/*
+** Allowed values for the NameContext, ncFlags field.
+*/
+#define NC_AllowAgg 0x01 /* Aggregate functions are allowed here */
+#define NC_HasAgg 0x02 /* One or more aggregate functions seen */
+#define NC_IsCheck 0x04 /* True if resolving names in a CHECK constraint */
+
+/*
** An instance of the following structure contains all information
** needed to generate code for a single SELECT statement.
**