All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
functionLite.h
Go to the documentation of this file.
1//
2// Copyright 2016 Pixar
3//
4// Licensed under the terms set forth in the LICENSE.txt file available at
5// https://openusd.org/license.
6//
7#ifndef PXR_BASE_ARCH_FUNCTION_LITE_H
8#define PXR_BASE_ARCH_FUNCTION_LITE_H
9
17
18#include "pxr/base/arch/defines.h"
19// Note: this file specifically does not include <string>.
20
21#define __ARCH_FUNCTION__ __func__
22
23#if defined(ARCH_COMPILER_GCC) || defined(ARCH_COMPILER_ICC) || \
24 defined(ARCH_COMPILER_CLANG)
25# define __ARCH_PRETTY_FUNCTION__ __PRETTY_FUNCTION__
26#elif defined(ARCH_COMPILER_MSVC)
27# define __ARCH_PRETTY_FUNCTION__ __FUNCSIG__
28#else
29# define __ARCH_PRETTY_FUNCTION__ __ARCH_FUNCTION__
30#endif /* defined(ARCH_COMPILER_GCC) || defined(ARCH_COMPILER_ICC) ||
31 defined(ARCH_COMPILER_CLANG)*/
32
33#if defined(BUILD_COMPONENT_SRC_PREFIX)
34# define __ARCH_FILE__ BUILD_COMPONENT_SRC_PREFIX __FILE__
35#else
36# define __ARCH_FILE__ __FILE__
37#endif /* defined(BUILD_COMPONENT_SRC_PREFIX) */
38
39#endif // PXR_BASE_ARCH_FUNCTION_LITE_H