| 492 | } |
| 493 | |
| 494 | Symbol* SymbolTable::LookupGlobal( const char* string ) const |
| 495 | { |
| 496 | if( m_root->m_subBlocks.empty() ) |
| 497 | { |
| 498 | return nullptr; |
| 499 | } |
| 500 | InlineString toFind = MakeInlineString( string ); |
| 501 | auto equals = [=]( Symbol* symbol ) { return symbol->name == toFind; }; |
| 502 | auto symbol = std::find_if( m_root->m_subBlocks[0]->m_symbols.begin(), m_root->m_subBlocks[0]->m_symbols.end(), equals ); |
| 503 | if( symbol != m_root->m_subBlocks[0]->m_symbols.end() ) |
| 504 | { |
| 505 | return *symbol; |
| 506 | } |
| 507 | return nullptr; |
| 508 | } |
| 509 | |
| 510 | bool SymbolTable::IsGlobal( Symbol* symbol ) const |
| 511 | { |
no test coverage detected