HLSL non-functional: Generalize namespace nesting.

Also use this to move deferred member-function-body parsing to a better
place.

This should also be well poised for implementing the 'namespace' keyword.
This commit is contained in:
John Kessenich 2017-03-19 12:24:29 -06:00
parent e751bca75c
commit f3d88bd498
7 changed files with 64 additions and 60 deletions

View file

@ -160,9 +160,10 @@ public:
void pushScope() { symbolTable.push(); }
void popScope() { symbolTable.pop(0); }
void pushThis(const TString& name);
void popThis();
TString* getFullMemberFunctionName(const TString& name, bool isStatic) const;
void pushNamespace(const TString& name);
void popNamespace();
TString* getFullNamespaceName(const TString& localName) const;
void addScopeMangler(TString&);
void pushSwitchSequence(TIntermSequence* sequence) { switchSequenceStack.push_back(sequence); }
void popSwitchSequence() { switchSequenceStack.pop_back(); }