summaryrefslogtreecommitdiff
path: root/src/parser.h
diff options
context:
space:
mode:
authorAdrian Thurston <thurston@complang.org>2013-12-30 12:02:30 -0500
committerAdrian Thurston <thurston@complang.org>2013-12-30 12:02:30 -0500
commit53c9f15115f95e71dfb62388acb90642bc40e053 (patch)
tree3ac62a616ba491adc07c87470d4b51dd6e07b9b0 /src/parser.h
parent8c27240b623ed86c03fcc46112a76be2af9829fe (diff)
downloadcolm-53c9f15115f95e71dfb62388acb90642bc40e053.tar.gz
store parsed TypeRef and VarRef in TypeRef
These give the pattern and constructor type context that we will use to lookup types in the pattern/constructor.
Diffstat (limited to 'src/parser.h')
-rw-r--r--src/parser.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/parser.h b/src/parser.h
index 52e674cd..d54ad62e 100644
--- a/src/parser.h
+++ b/src/parser.h
@@ -90,9 +90,9 @@ struct BaseParser
LangExpr *parseCmd( const InputLoc &loc, bool stop, ObjectField *objField,
TypeRef *typeRef, FieldInitVect *fieldInitVect, ConsItemList *list );
PatternItemList *consPatternEl( LangVarRef *varRef, PatternItemList *list );
- PatternItemList *patternElNamed( const InputLoc &loc, NamespaceQual *nspaceQual,
- const String &data, RepeatType repeatType );
- PatternItemList *patternElType( const InputLoc &loc,
+ PatternItemList *patternElNamed( const InputLoc &loc, LangVarRef *varRef,
+ NamespaceQual *nspaceQual, const String &data, RepeatType repeatType );
+ PatternItemList *patternElType( const InputLoc &loc, LangVarRef *varRef,
NamespaceQual *nspaceQual, const String &data, RepeatType repeatType );
PatternItemList *patListConcat( PatternItemList *list1, PatternItemList *list2 );
ConsItemList *consListConcat( ConsItemList *list1, ConsItemList *list2 );
@@ -106,7 +106,7 @@ struct BaseParser
ProdEl *prodElLiteral( const InputLoc &loc, const String &data,
NamespaceQual *nspaceQual, ObjectField *objField, RepeatType repeatType,
bool commit );
- ConsItemList *consElLiteral( const InputLoc &loc,
+ ConsItemList *consElLiteral( const InputLoc &loc, TypeRef *consTypeRef,
const String &data, NamespaceQual *nspaceQual );
Production *production( const InputLoc &loc, ProdElList *prodElList,
String name, bool commit, CodeBlock *codeBlock, LangEl *predOf );