|
1 // |
|
2 // Copyright (c) 2002-2010 The ANGLE Project Authors. All rights reserved. |
|
3 // Use of this source code is governed by a BSD-style license that can be |
|
4 // found in the LICENSE file. |
|
5 // |
|
6 // SearchSymbol is an AST traverser to detect the use of a given symbol name |
|
7 // |
|
8 |
|
9 #include "compiler/SearchSymbol.h" |
|
10 |
|
11 #include "compiler/InfoSink.h" |
|
12 #include "compiler/OutputHLSL.h" |
|
13 |
|
14 namespace sh |
|
15 { |
|
16 SearchSymbol::SearchSymbol(const TString &symbol) : mSymbol(symbol) |
|
17 { |
|
18 match = false; |
|
19 } |
|
20 |
|
21 void SearchSymbol::traverse(TIntermNode *node) |
|
22 { |
|
23 node->traverse(this); |
|
24 } |
|
25 |
|
26 void SearchSymbol::visitSymbol(TIntermSymbol *symbolNode) |
|
27 { |
|
28 if (symbolNode->getSymbol() == mSymbol) |
|
29 { |
|
30 match = true; |
|
31 } |
|
32 } |
|
33 |
|
34 bool SearchSymbol::foundMatch() const |
|
35 { |
|
36 return match; |
|
37 } |
|
38 } |