@ProCxx

Страница 2320 из 2477
Antony
03.09.2018
13:15:04
Нужен коллективный разум! Для принятия в C++20 stacktrace нужно придумать хорошее имя для класса stack_frame (который возвращает на рантайме данные об имени функции и её расположении в исходниках). Имя stack_frame не подходит, так как его конструктор потенциально работает с любыми указателями на функции (что не совсем то же самое, что указатели на фрейм). У кого какие идеи по наименованию?

Antony
03.09.2018
13:18:18
хм.. .а ещё варианты есть?

Google
Evgeniy
03.09.2018
13:19:59
Antony
03.09.2018
13:20:52
Лучший способ назвать что-то, это положить в название описание этого предмета. Ещё раз, что представляет собой этот класс?
обёртка над указателем на функцию или стек фрейм, позволяющая возвращать имя функции и расположение её в исходниках

Ioann V
03.09.2018
13:21:03
@arseny Арсенчику, спасибо за помосчь!

Ilia
03.09.2018
13:21:17
function_description

Antony
03.09.2018
13:21:22
stacktrace - это вектор таких классов

Evgeniy
03.09.2018
13:21:29
Anatoly
03.09.2018
13:22:43
function_location или function_source

Antony
03.09.2018
13:23:48
function_description
Desciption подразумевает описание поведения, а тут его нет

Александр
03.09.2018
13:24:10
function_frame

Antony
03.09.2018
13:24:20
function_ref(erence) ?
Такое наименования подразумевает возможность вызывать этот объект (+ такой класс уже добавляют в стандарт)

Google
Евгений
03.09.2018
13:24:36
trace_frame

Antony
03.09.2018
13:25:05
function_location или function_source
хмм... а вот эти имена хорошо звучат, надо попробовать

A.D.
03.09.2018
13:27:15
stacktrace - это вектор таких классов
ну, в gdb backtrace состоит из frame'ов? frame - слишком коротко?

или я не понял смысла?

Antony
03.09.2018
13:28:21
фрейм - это указатель на функцию, лежащий в стеке вызовов. Такое имя не очень подходит, так как можно создавать экземпляры этого класса просто из указателей на функции

Дед Пегас
03.09.2018
13:29:03
trace_point, лол

Antony
03.09.2018
13:29:15
угу

A.D.
03.09.2018
13:30:08
exec_point )

Antony
03.09.2018
13:31:17
function_location или function_source
есть минус - член класса name() плохо сочетается с такими именами function_location::name() - немного странновато

Дед Пегас
03.09.2018
13:31:36
exec_point ок

Или trace_point'

Evgeniy
03.09.2018
13:31:53
exec_point ок
да, норм

Ilia
03.09.2018
13:32:01
Ilia
03.09.2018
13:33:08
Такое наименования подразумевает возможность вызывать этот объект (+ такой класс уже добавляют в стандарт)
Почему ты всё додумываешь по названию какие-то действия? Совершенно неясно.

Дед Пегас
03.09.2018
13:33:39
Вот нинад pretty_str(),

это неудобно

Google
Ilia
03.09.2018
13:34:15
фрейм - это указатель на функцию, лежащий в стеке вызовов. Такое имя не очень подходит, так как можно создавать экземпляры этого класса просто из указателей на функции
Кстати, а глубина вызова же там должна тоже быть? Одна и та же функция же может быть в стеке вызовов несколько раз быть?

callstack_point ещё.

callstack_element

Evgeniy
03.09.2018
13:34:58
callstack_point ещё.
так фишка в том что может быть и не со стека

A.D.
03.09.2018
13:35:18
Ilia
03.09.2018
13:35:34
Как это не со стека, если это стек?

Anatoly
03.09.2018
13:37:29
@antoshkka Антон, а просто function ты не хочешь заюзать?

Ilia
03.09.2018
13:37:34
.
Долго долго я стирал грязьку с экрана...

Antony
03.09.2018
13:37:41
function_definition_info ?

Дед Пегас
03.09.2018
13:37:57
Anatoly
03.09.2018
13:38:20
func_meta

func_info

Дед Пегас
03.09.2018
13:38:36
fun_mekka (извините)

A.D.
03.09.2018
13:38:38
укоротить до function_info.

Дед Пегас
03.09.2018
13:38:52
укоротить до function_info.
Ну вот уже почти ок, да.

A.D.
03.09.2018
13:39:20
но меня смущает, что stacktrace - вектор function_info )

тогда stacktrace надо тоже переименовывать

Antony
03.09.2018
13:40:30
func_info
тут могут у людей возникнуть неприятные ассоциации с std::type_info, который в отличие от subj * не копируемый * не дофолтно конструкируемый * name() возвращает const char*, а не std::string

Google
Дед Пегас
03.09.2018
13:40:42
Даёшь call_trace и exec_point!

A.D.
03.09.2018
13:40:46
у меня глупый вопрос: просто info нельзя использовать? у вас же, поди, свой неймспейс

Дед Пегас
03.09.2018
13:40:48
Или trace_point

A.D.
03.09.2018
13:41:29
ясно

тогда trace_point

trace_info

Anatoly
03.09.2018
13:42:11
function_call

Evgeniy
03.09.2018
13:42:15
exec_point имхо топ

Evgeniy
03.09.2018
13:42:47
ну или function_trace

Antony
03.09.2018
13:43:19
какой к чёрту constexpr_vector? это же мусор
не, без ничжнего подчеркивания :) обычный вектор, чтобы мог использоваться в constexpr контексте

Alexander
03.09.2018
13:43:43
не, без ничжнего подчеркивания :) обычный вектор, чтобы мог использоваться в constexpr контексте
аааа. Если так, то круто. Будет интересно посмотреть, как это сделано

Antony
03.09.2018
13:44:45
function_clue ?

Ilia
03.09.2018
13:45:29
Ну, это слэнг какой-то пошёл...

Igor
03.09.2018
13:45:49
function_clue ?
потом function_token, за ним function_bounty, и хопа - в с++ встроен геймплей Hunt: Showdown

Evgeniy
03.09.2018
13:46:10
function_clue ?
function_meta

Anatoly
03.09.2018
13:46:26
ну давайте так, stacktrace содержит информацию о вызовах, так давайте что-то call содержащее

Ruslan
03.09.2018
13:46:31
function_footprint

Google
Antony
03.09.2018
13:46:45
callable_info ?

Ruslan
03.09.2018
13:46:49
callee

)

Alexander
03.09.2018
13:46:52
function_footprint
не, чот не оч

Evgeniy
03.09.2018
13:46:54
ну давайте так, stacktrace содержит информацию о вызовах, так давайте что-то call содержащее
так идея в том что как раз можно и без вызова эту штуку сделать?

callable_info ?
тоже норм

Igor
03.09.2018
13:47:12
а зачем делать эту штуку без вызова?

Anatoly
03.09.2018
13:47:34
чтобы узнать где определена

Дед Пегас
03.09.2018
13:47:55
call_info можно

Antony
03.09.2018
13:47:59
а зачем делать эту штуку без вызова?
она не шаблонная, поэтому хранит в себе void*

Anatoly
03.09.2018
13:48:34
call_point

Igor
03.09.2018
13:48:58
ну я просто пытаюсь понять, если юзер создаст самостоятельно какой-нибудь exec_point ep(my_func), что полезного сможет он из него извлечь

A.D.
03.09.2018
13:49:08
function_data

Дед Пегас
03.09.2018
13:49:50
alex_fails можно (продолжаем шутковать)

Anatoly
03.09.2018
13:50:05
rabbit_hole

Igor
03.09.2018
13:50:10
сырец и номер строки и имя
получается великолепный function_traits не имеющий никакого отношения к stacktrace и execution

Дед Пегас
03.09.2018
13:50:34
Ну эт не трейты, эт просто инфа.

Anatoly
03.09.2018
13:50:39

Страница 2320 из 2477