| // |
| // Copyright (c) 2017 The ANGLE Project Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| // |
| |
| #include "compiler/translator/HashNames.h" |
| |
| namespace sh |
| { |
| |
| TString HashName(const TString &name, ShHashFunction64 hashFunction) |
| { |
| if (hashFunction == nullptr || name.empty()) |
| return name; |
| khronos_uint64_t number = (*hashFunction)(name.c_str(), name.length()); |
| TStringStream stream; |
| stream << HASHED_NAME_PREFIX << std::hex << number; |
| TString hashedName = stream.str(); |
| return hashedName; |
| } |
| |
| } // namespace sh |