MCPcopy Create free account
hub / github.com/carbonengine/trinity / AddSymbol

Method AddSymbol

shadercompiler/SymbolTable.cpp:335–350  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

333}
334
335Symbol* ScopeSymbolTable::AddSymbol( const InlineString& name, OverrideBehavior overrideBehavior )
336{
337 if( overrideBehavior == DISALOW_OVERRIDES )
338 {
339 auto equals = [=]( Symbol* symbol ) { return symbol->name == name; };
340 auto it = std::find_if( m_symbols.begin(), m_symbols.end(), equals );
341 if( it != m_symbols.end() )
342 {
343 return nullptr;
344 }
345 }
346 Symbol* newSymbol = new Symbol;
347 newSymbol->name = name;
348 m_symbols.push_back( newSymbol );
349 return newSymbol;
350}
351
352Symbol* ScopeSymbolTable::AddSymbol( Symbol* symbol, OverrideBehavior overrideBehavior )
353{

Callers 15

AddBufferSymbolMethod · 0.80
AddFunctionFunction · 0.80
AddConstantFunction · 0.80
PatchGlobalsInFunctionsFunction · 0.80
CollectGlobalsFunction · 0.80
NewStructMemberFunction · 0.80
PatchShaderFunction · 0.80
PatchRtShaderFunction · 0.80
CreateGlobalInputsStructFunction · 0.80
NewStructFunction · 0.80

Calls 4

compareSymbolsFunction · 0.85
beginMethod · 0.45
endMethod · 0.45
GetParentMethod · 0.45

Tested by

no test coverage detected