Lines Matching refs:symbol
34 // want these to end up in built-in root symbol tables (where they will outlive the Program
36 // symbol table to the root which is not a built-in.
48 const Symbol* symbol = *symbolPPtr;
50 auto functions = GetFunctions(*symbol);
79 while (symbol && symbol->is<SymbolAlias>()) {
80 symbol = symbol->as<SymbolAlias>().origSymbol();
82 return symbol;
91 void SymbolTable::addAlias(skstd::string_view name, const Symbol* symbol) {
92 this->add(std::make_unique<SymbolAlias>(symbol->fLine, name, symbol));
95 void SymbolTable::addWithoutOwnership(const Symbol* symbol) {
96 const skstd::string_view& name = symbol->name();
100 refInSymbolTable = symbol;
104 if (!symbol->is<FunctionDeclaration>()) {
105 fContext.fErrors->error(symbol->fLine, "symbol '" + name + "' was already defined");
112 &symbol->as<FunctionDeclaration>()};
118 functions.push_back(&symbol->as<FunctionDeclaration>());