yum-mirror/slang
Making it easier to work with shaders
git clone https://git.yummers.dev/yum-mirror/slang
3485710e9
master
1// slang-name.cpp 2#include "slang-name.h" 3 4namespace Slang 5{ 6 7String getText (Name * name ) 8{ 9if (!name ) 10return String (); 11return name -> text ; 12} 13 14UnownedStringSlice getUnownedStringSliceText (Name * name ) 15{ 16return name ?name -> text .getUnownedSlice () :UnownedStringSlice (); 17} 18 19const char * getCstr (Name * name ) 20{ 21return name ?name -> text .getBuffer () :nullptr ; 22} 23 24Name * NamePool ::getName (UnownedStringSlice text ) 25{ 26RefPtr < Name > name ; 27if (names .tryGetValue (text ,name )) 28return name ; 29 30name = new Name (); 31name -> text = text ; 32names .add (text ,name ); 33return name ; 34} 35 36Name * NamePool ::getName (String const & text ) 37{ 38return getName (text .getUnownedSlice ()); 39} 40 41Name * NamePool ::tryGetName (String const & text ) 42{ 43RefPtr < Name > name ; 44if (names .tryGetValue (text ,name )) 45return name ; 46return nullptr ; 47} 48 49}// namespace Slang