table of contents
std::experimental::reflect::get_source_line(3) | C++ Standard Libary | std::experimental::reflect::get_source_line(3) |
NAME¶
std::experimental::reflect::get_source_line - std::experimental::reflect::get_source_line
Synopsis¶
Defined in header <experimental/reflect>
template< Object T > (reflection TS)
struct get_source_line;
Provides the member constant value equal to the presumed line number of the
declaration of the entity or typedef-name reflected by T.
Member constants¶
value the presumed line number of the declaration of the entity
or typedef-name
[static] reflected by T
(public static member constant)
Member functions¶
converts the object to std::uint_least32_t, returns
operator std::uint_least32_t value
(public member function)
operator() returns value
(C++14) (public member function)
Member types¶
Type Definition
value_type std::uint_least32_t
type std::integral_constant<std::uint_least32_t, value>
Example¶
The following code shows the source code line of an object or a class.
// Run this code
#include<experimental/reflect>
#include<iostream>
using refl = std::experimental::reflect;
float f;
struct P{};
int main()
{
std::cout << refl::get_source_line_v<reflexpr(f)> << '\n';
std::cout << refl::get_source_line_v<reflexpr(P)> << '\n';
}
Output:¶
6
7
See also¶
line return the line number represented by this object
(public member function of std::source_location)
source_line gets the line number that lexically relates the evaluation
represented
(C++23) by the stacktrace_entry
(public member function of std::stacktrace_entry)
2024.06.10 | http://cppreference.com |