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)