├── README.md ├── hws ├── 00-guide.md ├── 01-linux.md ├── 02-tools.md ├── 03-git.md └── flat_set │ ├── CMakeLists.txt │ ├── README.md │ ├── build │ ├── .gitkeep │ └── mipt-set │ ├── cmake │ └── GoogleTest.cmake │ ├── coredump │ └── core │ ├── coverage.sh │ ├── main.cpp │ └── mipt │ ├── CMakeLists.txt │ ├── journal │ ├── CMakeLists.txt │ ├── journal.h │ └── tests │ │ └── journal_test.cpp │ ├── log │ ├── CMakeLists.txt │ ├── log.cpp │ └── log.h │ └── set │ ├── CMakeLists.txt │ ├── set.h │ └── tests │ └── set_test.cpp └── sems ├── .vscode └── settings.json ├── sem-01.md ├── sem-02.md ├── sem-02 ├── a.cpp ├── b.cpp ├── b.h ├── ld.sh ├── optimize.cpp ├── project │ ├── Makefile │ ├── library.cpp │ ├── library.h │ ├── library.so │ ├── main.cpp │ ├── main.o │ └── test │ │ ├── Makefile │ │ └── p.cpp └── ub.cpp ├── sem-03.md ├── sem-04.md ├── sem-05.md ├── sem-06.md ├── sem-06 ├── CMakeLists.txt ├── a.out ├── main.c ├── main.o └── main.s ├── sem-07.md ├── sem-07 ├── a.out └── main.cpp ├── sem-08.md ├── sem-08 └── main.cpp ├── sem-09.md └── sem-09 ├── CMakeLists.txt ├── build ├── CMakeCache.txt ├── CMakeFiles │ ├── 3.21.3 │ │ ├── CMakeCCompiler.cmake │ │ ├── CMakeCXXCompiler.cmake │ │ ├── CMakeDetermineCompilerABI_C.bin │ │ ├── CMakeDetermineCompilerABI_CXX.bin │ │ ├── CMakeSystem.cmake │ │ ├── CompilerIdC │ │ │ ├── CMakeCCompilerId.c │ │ │ └── a.out │ │ └── CompilerIdCXX │ │ │ ├── CMakeCXXCompilerId.cpp │ │ │ └── a.out │ ├── CMakeDirectoryInformation.cmake │ ├── CMakeOutput.log │ ├── Makefile.cmake │ ├── Makefile2 │ ├── TargetDirectories.txt │ ├── cmake.check_cache │ ├── lib.dir │ │ ├── DependInfo.cmake │ │ ├── build.make │ │ ├── cmake_clean.cmake │ │ ├── cmake_clean_target.cmake │ │ ├── compiler_depend.make │ │ ├── compiler_depend.ts │ │ ├── depend.make │ │ ├── flags.make │ │ ├── lib.cpp.o │ │ ├── lib.cpp.o.d │ │ ├── link.txt │ │ └── progress.make │ ├── main.dir │ │ ├── DependInfo.cmake │ │ ├── build.make │ │ ├── cmake_clean.cmake │ │ ├── compiler_depend.make │ │ ├── compiler_depend.ts │ │ ├── depend.make │ │ ├── flags.make │ │ ├── link.txt │ │ ├── main.cpp.o │ │ ├── main.cpp.o.d │ │ └── progress.make │ ├── main_test.dir │ │ ├── DependInfo.cmake │ │ ├── build.make │ │ ├── cmake_clean.cmake │ │ ├── compiler_depend.make │ │ ├── compiler_depend.ts │ │ ├── depend.make │ │ ├── flags.make │ │ ├── link.txt │ │ ├── progress.make │ │ ├── tests.cpp.o │ │ └── tests.cpp.o.d │ └── progress.marks ├── Makefile ├── cmake_install.cmake ├── liblib.a ├── main └── main_test ├── install_gtest.sh ├── integration └── tests.py ├── lib.cpp ├── lib.h ├── main.cpp └── tests.cpp /README.md: -------------------------------------------------------------------------------- 1 | # С++ продвинутый поток 2021-2022 2 | ## Seminars 3 | 1. [Linux. Utils. Bash. Vim.](sems/sem-01.md) 4 | 2. [Compile. Makefile.](sems/sem-02.md) 5 | 3. [Remote developing. Git.](sems/sem-03.md) 6 | 4. [IDE. Cmake.](sems/sem-04.md) 7 | 5. [Bash advanced.](sems/sem-05.md) 8 | 6. [C-style.](sems/sem-06.md ) 9 | 7. [OOP.](sems/sem-07.md) 10 | 11 | ## Hws 12 | 1. [Linux](hws/01-linux.md) 13 | 2. [Tools](hws/02-tools.md) 14 | 15 | ## Useful 16 | 1. [Гайд как сдавать задачи](hws/00-guide.md) -------------------------------------------------------------------------------- /hws/00-guide.md: -------------------------------------------------------------------------------- 1 | # Инструкция по сдаче HW 2 | 1. Зарегистрироваться и создать приватный репозиторий на [github](https://github.com/). 3 | 2. Пригласить Alexponomarev7 в collaborators. Settings -> Manage Access -> Add people 4 | 3. Для каждой задачи создать ветку с её названием, например, `01-linux`. 5 | 4. После выполнения задачи сделать pull request и проверять появление комментариев от Alexponomarev7 в нём. 6 | 5. При успешном выполнении Alexponomarev7 делает merge ветки с задачей в мастер и проставляет баллы. -------------------------------------------------------------------------------- /hws/01-linux.md: -------------------------------------------------------------------------------- 1 | # HW №1. Linux. Enviroment. 2 | **Дедлайн: 9:00 1.11.21** 3 | 4 | 5 | В этом задании мы лучше познакомимся с командами в Linux и их настройке. Вам дан артефакт одного сервиса, ваша задача написать скрипты по его его управлению. У вас должно получиться 4 скрипта: `configure.sh`, `start.sh`, `stop.sh`, `healthcheck.sh`. А теперь подробнее: артефактом обычно называют собранный архив с бинарниками и нужными файлами конфигурации. 6 | 7 | Артефакт располгается здесь [13ce66d6b7df2862ee63236a178965d5.tar.gz](here will be link). 8 | 9 | Скрипт `configure.sh` должен делать следующее: 10 | 1. Создает пользователя judge в случае его отсутствия (см. useradd). 11 | 2. Скачивает архив и распаковывает его в домашней директории `/home/judge/` (см. curl + wget, tar). 12 | 3. Настраиваем владельца новых файлов judge. 13 | 4. Находим исполняемый файл server и прописываем путь к нему в $PATH (см. find и cat в bashrc пользователя judge). 14 | 5. Настраиваем на все файлы права на чтения, на server еще и на исполнение. 15 | 16 | Скрипт `start.sh` должен делать следующее: 17 | 1. Запускаем в бэкраунде файл server и записываем pid в файл `/home/judge/server.pid`. 18 | 2. Пишем статус запуска. 19 | 3. Запускаем `healthcheck.sh` в случае успеха. 20 | 21 | Скрипт `stop.sh` должен делать следующее: 22 | 1. Считываем `/home/judge/server.pid` и посылаем kill этому процессу. Пишем статус команды в консоль. 23 | 2. Удаляем файл `/home/judge/server.pid`. 24 | 25 | Скрипт `healthcheck.sh` должен делать следующее: 26 | 1. Раз в 5 секунд проверять, что процесс c pid'ом из `/home/judge/server.pid` жив и соответствует нашей запущенной команде. Пишем в файл `/home/judge/server.log` статус команды. 27 | 2. Если процесс умер, то удаляем файл `server.pid` и пишем об этом в `server.log`. Пишем статус команды. 28 | -------------------------------------------------------------------------------- /hws/02-tools.md: -------------------------------------------------------------------------------- 1 | # HW №2. Tools. 2 | **Дедлайн: 9:00 1.11.21** 3 | 4 | Вам дан cpp файл. Ваша задача заключается в том, чтобы настроить систему проверки этого кода. Сначала создайте Makefile, который содержит две команды: debug и release. Дебажная сборка обычно используется для отлаживания ошибок в программе. В нашем случае такая сборка компилируется с санитайзерами, без оптимизаций, с дебажными символами и переменной для препроцессора DEBUG, релизная сборка будет нарушать все условия дебажной сборки и иметь включенный уровень оптимизаций -O3. 5 | 6 | В итоге напишите скрипт check.sh, который собирает программу в обоих режимх и делает следующие проверки: 7 | * Программа успешно отрабатывает без падения на включенных санитайзерах. В случае падения санитайзера выводится сообщение санитайзера. 8 | * Программа успешно проходит проверку на кодстайл `--style=Google`, иначе выводится что нужно отформатировать без инлайн форматирования. 9 | * Скрипт выводит время работы программы в релизной сборке. 10 | 11 | Каждый из пунктов должен отрабатывать в отдельной bash-функции. Результат успешного прохождения должен выглядеть примерно так: 12 | ``` 13 | Check main.cpp... 14 | Sanitize check OK 15 | Code-style check OK 16 | Benchmark time 2.03s 17 | ``` 18 | -------------------------------------------------------------------------------- /hws/03-git.md: -------------------------------------------------------------------------------- 1 | # HW №3. Git. Repo. 2 | Вам дан архив с репозиторием, там разрабатывался один из проектов. Ваша задача с помощью утилиты git понять что там происходит и смерджить ветки так, чтобы проект был закончен. 3 | 4 | Требования: 5 | * Сначала вмерживается `t-add-pages` в `master`. 6 | * Ветка `t-add-test` не успела закоммитеть все что было и оставшиеся изменения лежать в stash. Вам надо их найти и применить. Затем с помощью метода rebase+cherry-pick перенести коммит в `master`. 7 | * Ветка `t-fix-codestyle` должна подмерждить в себя `master`, разрешить конфликты, доделать изменения, которые соотносятся по смыслу с названием ветки и вмерджить себя в `master`. 8 | * В конце создайте **закрытый** репозиторий на github, добавьте туда свой ssh ключ, подключите remote к выполненному репозиторию и запуште ветку *master*. -------------------------------------------------------------------------------- /hws/flat_set/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | project(mipt-set) 2 | cmake_minimum_required(VERSION 3.21) 3 | 4 | set(CMAKE_CXX_STANDARD 17) 5 | 6 | # Your code goes here -------------------------------------------------------------------------------- /hws/flat_set/README.md: -------------------------------------------------------------------------------- 1 | # GDB. Cmake. Tests. 2 | Вам дан проект игрушечного fault-tolerant множества "MiptSet". Этот проект потребуется во всех домашних заданиях, так что приведем краткое описание происходящего. 3 | 4 | Журнал - стандартный способ для поддержания консистентности в случае отказа система. Перед тем как выполнять какую-то операцию над структурой данных, информация об операции пишется в журнал, таким образом, если наша программа упала, то мы запросто можем ее восстановить по всем операциям, которые над ней воспроизводились, просто последовательно применив их. 5 | 6 | Однако если после падаения мы будем воспроизводить все операции с самого начала, то с каждым падением восстановление будет занимать всё больше времени. Поэтому раз в сколько-то операций мы будем сохранять снэпшот системы. То есть после падаения достаточно будет загрузить последнее сохраненное состояние системы, а затем доприменять последние изменения. 7 | 8 | Нашу систему писал совсем неопытный программист и в качестве вашего задания - необходимо доработать эту систему и исправить в ней допущенные баги. Известно, что было допущено как минимум 5 ошибок, в качестве подсказки скажем их классификацию: 9 | * Приводящая к потере данных (consistency failure) 10 | * Приводящая к UB 11 | * Приводящая к потере производительности (2 ошибки) 12 | * Приводяшая к нарушение логики программы 13 | 14 | ## CMake. Task 1 15 | Чтобы было можно отыскать остальные ошибки необходимо настроить сборку. Ваша задача дописать cmake файлы, которые поддержат корректную сборку проекта. Директория `/mipt` задает библиотеку всего проекта. Она объединяет все модули библиотеки в один так, чтобы эти модули были в изоляции, но при этом пользователь мог иметь к ним доступ. Такой тип линковки в cmake соответствует "Interface". 16 | 17 | На этом этапе тесты подключать в сборку нет необходимости. Сама библиотека `mipt` должна линковаться приватно к исполняемому файлу. 18 | 19 | После этой задачи уже можно будет запустить проект и с ним поиграться. На первый взгляд может сложиться впечатление, что все работает как надо. 20 | 21 | ## GDB. Task 2 22 | В случае ошибки с UB нам повезло и у нас есть core dump воспроизведения этого бага. Предлагается по этой корке разобраться в чём ошибка. Тут достаточно написать подробный отчёт и исправить в коде багу, чтобы UB больше не было. Остальные ошибки исправлять не требуется. 23 | 24 | ## Tests + GDB. Task 3 25 | Чтобы можно было найти, исправить ошибки и развивать проект - необходимо обложить его тестами. Обратите внимание на `/cmake/GoogleTest.cmake`, в нем надо реализовать функцию, которая упростит вам жизнь в подключении тестов. Там используется флаг `--coverage`, который нам пригодится для подсчёта покрытия тестами кода. Реализуйте подключение тестов для журнала и имплементации множества. 26 | 27 | Затем стоит заняться написанием тестов и проверки покрытия. Скрипт `coverage.sh` сгенерирует директорию с `index.html`, в котором будет отчет покрытии. 28 | 29 | Вам необходимо исправить все баги и добиться максимально возможного по вашему мнению покрытия. 30 | -------------------------------------------------------------------------------- /hws/flat_set/build/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alexponomarev7/cplusplus-advance-sem/ebc23a5d406670a1fbe8079644d42f716342cfec/hws/flat_set/build/.gitkeep -------------------------------------------------------------------------------- /hws/flat_set/build/mipt-set: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alexponomarev7/cplusplus-advance-sem/ebc23a5d406670a1fbe8079644d42f716342cfec/hws/flat_set/build/mipt-set -------------------------------------------------------------------------------- /hws/flat_set/cmake/GoogleTest.cmake: -------------------------------------------------------------------------------- 1 | find_package(GTest REQUIRED CONFIG) 2 | include(GoogleTest) 3 | 4 | set(CMAKE_CXX_FLAGS "--coverage") 5 | 6 | function(add_mipt_test target sources) 7 | # Your code goes here... 8 | endfunction() -------------------------------------------------------------------------------- /hws/flat_set/coredump/core: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alexponomarev7/cplusplus-advance-sem/ebc23a5d406670a1fbe8079644d42f716342cfec/hws/flat_set/coredump/core -------------------------------------------------------------------------------- /hws/flat_set/coverage.sh: -------------------------------------------------------------------------------- 1 | lcov --directory ./build/ --capture --output-file ./code_coverage.info -rc lcov_branch_coverage=1 2 | genhtml code_coverage.info --branch-coverage --output-directory ./code_coverage_report/ 3 | -------------------------------------------------------------------------------- /hws/flat_set/main.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | 5 | #include "mipt/set/set.h" 6 | #include "mipt/log/log.h" 7 | 8 | void handle_search(bool response) { 9 | if (response) std::cout << "Exists" << std::endl; 10 | else std::cout << "Not found" << std::endl; 11 | } 12 | 13 | void handle_error(bool response) { 14 | if (response) std::cout << "OK" << std::endl; 15 | else std::cout << "Failed" << std::endl; 16 | } 17 | 18 | void handle_empty(bool response) { 19 | if (response) std::cout << "Empty" << std::endl; 20 | else std::cout << "Non-empty" << std::endl; 21 | } 22 | 23 | int main(int argc, char** argv) { 24 | std::string_view journal_path = "./journal"; 25 | auto optlevel = mipt::OptimizeLevel::NONE; 26 | 27 | for (int i = 1; i < argc; ++i) { 28 | if (!strcmp(argv[i], "-v")) { 29 | set_loglevel(InfoLevel::VERBOSE); 30 | } else if (!strcmp(argv[i], "--path") || !strcmp(argv[i], "-p")) { 31 | if (i + 1 == argc) { 32 | std::cerr << "Error while parsing command-line options...\nStop" << std::endl; 33 | return -1; 34 | } 35 | i++; 36 | 37 | journal_path = argv[i]; 38 | } else if (!strcmp(argv[i], "-O")) { 39 | optlevel = mipt::OptimizeLevel::STRONG; 40 | } else { 41 | std::cerr << "Undefined command-line option" << std::endl; 42 | return -1; 43 | } 44 | } 45 | 46 | mipt::FlatSet set("./journal", optlevel); 47 | 48 | std::string query; 49 | int key; 50 | while (std::cin >> query) { 51 | if (query == "?") { 52 | std::cin >> key; 53 | handle_search(set.exists(key)); 54 | } else if (query == "+") { 55 | std::cin >> key; 56 | handle_error(set.insert(key)); 57 | } else if (query == "-") { 58 | std::cin >> key; 59 | handle_error(set.erase(key)); 60 | } else if (query == "size") { 61 | std::cout << set.size() << std::endl; 62 | } else if (query == "empty") { 63 | handle_empty(set.is_empty()); 64 | } else if (query == "exit") { 65 | std::cout << "Bye" << std::endl; 66 | return 0; 67 | } else { 68 | throw std::runtime_error("unknown instruction"); 69 | } 70 | } 71 | 72 | return 0; 73 | } -------------------------------------------------------------------------------- /hws/flat_set/mipt/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | project(mipt-lib) 2 | 3 | # Your code goes here -------------------------------------------------------------------------------- /hws/flat_set/mipt/journal/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | project(journal) 2 | 3 | # Your code goes here -------------------------------------------------------------------------------- /hws/flat_set/mipt/journal/journal.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include 4 | #include 5 | #include 6 | 7 | #include "mipt/log/log.h" 8 | 9 | namespace mipt { 10 | 11 | namespace fs = std::filesystem; 12 | 13 | enum OptimizeLevel { 14 | NONE, 15 | STRONG 16 | }; 17 | 18 | template 19 | class Journal { 20 | public: 21 | explicit Journal(std::filesystem::path path, T* structure, OptimizeLevel optlevel = OptimizeLevel::NONE 22 | , size_t snapshot_frequency = 128) 23 | : structure_(structure) 24 | , path_(path) 25 | , snapshot_frequency_(snapshot_frequency) 26 | , optlevel_(optlevel) 27 | { 28 | if (optlevel == OptimizeLevel::STRONG) { 29 | INFO() << "Create journal in STRONG optimization mode!" << std::endl; 30 | } 31 | 32 | fs::create_directories(path); 33 | log_ = std::ofstream(path / "log", std::ios_base::app); 34 | UpdateEpoch(); 35 | } 36 | 37 | void LoadState() { 38 | UpdateEpoch(); 39 | size_t offset_actions = 0; 40 | if (epoch_ != 0) { 41 | INFO() << "Read snapshot version: " << last_snapshot_ - 1 << std::endl; 42 | 43 | std::ifstream snapshot_in(path_ / std::to_string(last_snapshot_ - 1)); 44 | 45 | snapshot_in.read((char*)&offset_actions, sizeof(offset_actions)); 46 | structure_->Read(snapshot_in); 47 | } 48 | std::ifstream log_in(path_ / "log"); 49 | log_in.seekg(offset_actions); 50 | 51 | switch (optlevel_) { 52 | case OptimizeLevel::NONE: { 53 | JournalEntry entry; 54 | while (log_in.read((char*)&entry, sizeof(entry))) { 55 | structure_->Apply(&entry); 56 | assert(entry.applied); 57 | } 58 | break; 59 | } 60 | case OptimizeLevel::STRONG: { 61 | std::vector entries; 62 | std::vector entries_ptr; 63 | entries.reserve(snapshot_frequency_); 64 | entries_ptr.reserve(snapshot_frequency_); 65 | 66 | JournalEntry entry; 67 | while (log_in.read((char*)&entry, sizeof(entry))) { 68 | entries.push_back(entry); 69 | entries_ptr.push_back(&entries.back()); 70 | } 71 | 72 | structure_->ApplyBatch(entries_ptr); 73 | break; 74 | } 75 | default: 76 | assert(0); 77 | } 78 | } 79 | 80 | void Write(JournalEntry entry) { 81 | log_.write((char*)&entry, sizeof(entry)); 82 | epoch_++; 83 | 84 | if (epoch_ % snapshot_frequency_ == 0) { 85 | std::ofstream out(path_ / std::to_string(last_snapshot_)); 86 | last_snapshot_++; 87 | 88 | size_t offset_actions = log_.tellp();; 89 | out.write((char*)&offset_actions, sizeof(offset_actions)); 90 | structure_->Write(out); 91 | } 92 | } 93 | 94 | private: 95 | void UpdateEpoch() { 96 | while (fs::exists(path_ / std::to_string(last_snapshot_))) { 97 | last_snapshot_++; 98 | } 99 | } 100 | 101 | T* structure_; 102 | fs::path path_; 103 | std::ofstream log_; 104 | const int snapshot_frequency_; 105 | size_t epoch_ = 0; 106 | size_t last_snapshot_ = 0; 107 | OptimizeLevel optlevel_ = OptimizeLevel::NONE; 108 | }; 109 | 110 | } -------------------------------------------------------------------------------- /hws/flat_set/mipt/journal/tests/journal_test.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | 5 | #include "gtest/gtest.h" 6 | #include "gmock/gmock.h" 7 | 8 | #include "mipt/journal/journal.h" 9 | 10 | namespace mipt { 11 | 12 | fs::path tmp_dir() { 13 | return fs::temp_directory_path() / "journal_test"; 14 | } 15 | 16 | // Used logging int stucture 17 | enum TestEntry { 18 | ADD, 19 | SUB 20 | }; 21 | 22 | // Your code goes here... 23 | 24 | } -------------------------------------------------------------------------------- /hws/flat_set/mipt/log/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | project(log) 2 | 3 | add_library(${PROJECT_NAME} log.cpp) -------------------------------------------------------------------------------- /hws/flat_set/mipt/log/log.cpp: -------------------------------------------------------------------------------- 1 | #include "log.h" 2 | 3 | InfoLevel gInfoLevel = InfoLevel::DEFAULT; -------------------------------------------------------------------------------- /hws/flat_set/mipt/log/log.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include 4 | 5 | enum InfoLevel { 6 | DEFAULT, 7 | VERBOSE 8 | }; 9 | 10 | extern InfoLevel gInfoLevel; 11 | 12 | #define INFO() std::cerr << "[INFO] " 13 | #define INFOV() if (gInfoLevel == InfoLevel::VERBOSE) std::cerr << "[INFO_V]" 14 | 15 | inline void set_loglevel(InfoLevel level) { 16 | gInfoLevel = level; 17 | } -------------------------------------------------------------------------------- /hws/flat_set/mipt/set/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | project(set) 2 | 3 | # Your code goes here -------------------------------------------------------------------------------- /hws/flat_set/mipt/set/set.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "mipt/journal/journal.h" 4 | #include 5 | #include 6 | #include 7 | #include 8 | 9 | namespace mipt { 10 | 11 | enum LogEvent { 12 | INSERT_KEY = 0x00, 13 | ERASE_KEY = 0x01, 14 | }; 15 | 16 | std::string to_string(LogEvent event) { 17 | switch (event) { 18 | case INSERT_KEY: 19 | return "INSERT"; 20 | case ERASE_KEY: 21 | return "ERASE"; 22 | default: 23 | assert(0); 24 | } 25 | } 26 | 27 | template 28 | struct LogEntry { 29 | LogEvent event; 30 | T key; 31 | bool applied = false; 32 | } __attribute__((packed)); 33 | 34 | template 35 | class FlatSet { 36 | public: 37 | using JournalType = Journal, LogEntry>; 38 | 39 | public: 40 | FlatSet(std::optional path = std::nullopt, OptimizeLevel optlevel = OptimizeLevel::NONE) 41 | { 42 | if (path.has_value()) { 43 | journal_ = new JournalType(*path, this, optlevel); 44 | journal_->LoadState(); 45 | } 46 | 47 | keys_.reserve(kInitialSize); 48 | } 49 | 50 | ~FlatSet() 51 | { 52 | if (journal_ != nullptr) { 53 | delete journal_; 54 | } 55 | } 56 | 57 | bool insert(const T& value) { 58 | if (exists(value)) { 59 | return false; 60 | } 61 | 62 | if (journal_) { 63 | journal_->Write(LogEntry{LogEvent::INSERT_KEY, value}); 64 | } 65 | keys_.push_back(value); 66 | 67 | std::sort(keys_.begin(), keys_.end()); 68 | return true; 69 | } 70 | 71 | bool exists(const T& value) const { 72 | auto found = std::lower_bound(keys_.begin(), keys_.end(), value); 73 | if (found == keys_.end()) { 74 | return false; 75 | } 76 | 77 | return *found == value; 78 | } 79 | 80 | bool erase(const T& value) { 81 | auto found = std::lower_bound(keys_.begin(), keys_.end(), value); 82 | if (found == keys_.end()) { 83 | return false; 84 | } 85 | 86 | if (journal_) { 87 | journal_->Write(LogEntry{LogEvent::ERASE_KEY, value}); 88 | } 89 | keys_.erase(found); 90 | return true; 91 | } 92 | 93 | size_t size() const { 94 | return keys_.size(); 95 | } 96 | 97 | bool is_empty() const { 98 | return size() == 0; 99 | } 100 | 101 | private: 102 | void Write(std::ostream& out) const { 103 | size_t size = keys_.size(); 104 | out.write((char*)&size, sizeof(size)); 105 | out.write((char*)keys_.data(), size * sizeof(T)); 106 | } 107 | 108 | void Read(std::istream& in) { 109 | size_t size; 110 | in.read((char*)&size, sizeof(size)); 111 | keys_.resize(size); 112 | in.read((char*)keys_.data(), size * sizeof(T)); 113 | } 114 | 115 | bool Apply(LogEntry* entry) { 116 | INFOV() << "Read entry: action(" << to_string(entry->event) << ") value(" << entry->key << ")" << std::endl; 117 | 118 | bool status; 119 | switch (entry->event) { 120 | case LogEvent::INSERT_KEY: 121 | status = insert(entry->key); 122 | break; 123 | case LogEvent::ERASE_KEY: 124 | status = erase(entry->key); 125 | break; 126 | } 127 | 128 | entry->applied = true; 129 | return status; 130 | } 131 | 132 | void ApplyBatch(std::vector*>& entries) { 133 | auto buffer_set = FlatSet(); 134 | 135 | for (auto* entry : entries) { 136 | if (!Apply(entry)) { 137 | entry->applied = false; 138 | } 139 | } 140 | 141 | for (const auto& key : buffer_set.keys_) { 142 | insert(key); 143 | } 144 | } 145 | 146 | 147 | private: 148 | friend class Journal, LogEntry>; 149 | static const size_t kInitialSize = 1024; 150 | 151 | private: 152 | JournalType* journal_ = nullptr; 153 | std::vector keys_; 154 | }; 155 | 156 | } -------------------------------------------------------------------------------- /hws/flat_set/mipt/set/tests/set_test.cpp: -------------------------------------------------------------------------------- 1 | // Your code goes here -------------------------------------------------------------------------------- /sems/.vscode/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "files.associations": { 3 | "memory": "cpp", 4 | "compare": "cpp" 5 | } 6 | } -------------------------------------------------------------------------------- /sems/sem-01.md: -------------------------------------------------------------------------------- 1 | # Linux. Utils. Bash. Vim. 2 | ## Utils 3 | * whoami - узнать свой username 4 | * pwd - посмотреть, где мы находимся 5 | * date - текущая дата и время 6 | * ls - посмотреть содержимое директории 7 | * ls dirname - посмотреть содержимое указанной директории 8 | * стрелки вверх-вниз - перемещаться по истории команд 9 | * ^C - прервать работающую программу 10 | * ^W - стереть слово, ^U - стереть всю строку 11 | * cd - перейти в директорию 12 | * cd .. - перейти вверх 13 | * cd - - вернуться назад 14 | * cd, cd ~, cd ~username - перейти в домашнюю директорию 15 | * ls -l - посмотреть содержимое в подробностях 16 | * ls -R - посмотреть рекурсивно 17 | * ls -a - посмотреть содержимое, включая скрытые файлы 18 | * chmod - поменять права доступа к файлу 19 | * chmod u+x - добавить возможность на исполнение файлу user'у 20 | * sudo - выполнить команду от имени суперпользователя 21 | * mkdir - создать директорию 22 | * touch - потрогать файл или создать пустой файл 23 | * cp - скопировать файл 24 | * cp -r - скопировать директорию 25 | * rm - удалить файл, rm -r удалить директорию 26 | * rm -f - принудительно удалить 27 | * mv - переместить или переименовать 28 | * cat - отобразить содержимое 29 | * head, tail - отобразить первые или последние несколько строк 30 | * grep - найти подстроку в файле 31 | * rgrep - рекурсивно найти подстроку в файлах директории 32 | * find . -name - найти файл 33 | * find -exec - над всеми найденными файлами выполнить команду 34 | * more - отобразить содержимое с возможностью пролистывания 35 | * less - отобразить с возможностью пролистывания вверх 36 | * vim - как зайти и как выйти, как вводить текст 37 | * python - простейшие вычисления 38 | * gcc, g++ - компиляция и запуск программ 39 | * man - посмотреть справку по команде 40 | 41 | ## Advance utils 42 | 43 | * cpuinfo - посмотреть инфу о процессоре 44 | * du, df - посмотреть, сколько места на диске 45 | * {} - сделать разворачивание списка в терминале 46 | * sudo -s или -i - стать суперпользователем (su) 47 | * sudo -u - выполнить команду от имени другого пользователя 48 | * tar - заархивировать или разархивировать 49 | * ln - создать жесткую или символическую ссылку 50 | 51 | ## Bash 52 | 53 | Bash - стандартный предустоновленный shell на системе Linux 54 | .bashrc - файл конфигурации shell'а 55 | 56 | zsh - альтернативный shell, пользующийся большой популярностью. Гибкий 57 | в конфигурировании. Одна из самых популярных конфигураций `Oh my zsh` 58 | https://ohmyz.sh/. 59 | 60 | * | - перенаправить вывод первой команды во ввод второй 61 | * 1> 2> - перенаправить вывод в файл 62 | * \>> - делать дописывание в файл вместо создания нового 63 | * присваивания переменным 64 | * переменная PATH и ее изменение 65 | * ; - несколько команд в одну строку 66 | * echo - вывести сообщение либо значение переменной $varname 67 | * двойные и одинарные кавычки, подстановка значений переменных в текст 68 | * $? - узнать код возврата предыдущей команды 69 | * && || - выполнить команду при условии успешного (неуспешного) завершения предыдущей 70 | * true, false - вернуть заведомо известный код возврата 71 | * test - проверить истинность выражения 72 | написать и запустить шелл-скрипт 73 | * $1 ... $9, $@ - обратиться к параметрам запуска из скрипта 74 | * if - условный оператор 75 | * for - цикл 76 | * history - посмотреть историю команд 77 | * ^R - делать поиск по истории 78 | переместиться в конец истории 79 | 80 | Примеры: 81 | ``` 82 | #!/bin/bash 83 | for file in $(ls) 84 | do 85 | echo $file 86 | done 87 | ``` 88 | 89 | ``` 90 | #!/bin/bash 91 | for ((i=1; i < 10; i++)) 92 | do 93 | echo $i 94 | if [[ i -gt 5]] 95 | break 96 | fi 97 | done 98 | ``` 99 | 100 | ``` 101 | #!/bin/bash 102 | x=1 103 | while [ $x -lt 5 ] 104 | do 105 | echo "Now x is $x" 106 | x=$(( $x + 1 )) 107 | done 108 | ``` 109 | 110 | ## Vim 111 | * v - войти в visual mode 112 | * i - войти в insert mode 113 | * X cmd - выполнить cmd X раз 114 | * dd - удалить строчку 115 | * y - скопировать выделенное в visual mode 116 | * p - вставить скопированное 117 | * / - включить поиск по файлу 118 | * : - командный режим (w - записать сохранить, q - выход) 119 | -------------------------------------------------------------------------------- /sems/sem-02.md: -------------------------------------------------------------------------------- 1 | # Compile. Makefile. 2 | 3 | ## Compile 4 | 5 | Процессы. 6 | 7 | Минимальная единица исполнения, в которой запускается программы. Процессы могут общаться друг с другом. Основные утилиты для работы: top, htop, kill, ps. 8 | 9 | Компилятор — транслятор, который осуществляет перевод всей исходной программы в эквивалентную ей результирующую программу на языке машинных команд или на языке ассемблера. Для C++ 3 наиболее популярных компилятора: gcc, clang, msvc, mingw. Последние 2 Windows-only. Подробнее про работу компилятора и различия в работе поговорим позже. Сейчас важно понимать общие этапы работы. 10 | 11 | 2 популярных семейства UNIX-like систем: Linux(GNU/Linux) и BSD. В Linux обычно установлен gcc по умолчанию, в BSD clang. Существуют также символические ссылки вида g++ и gcc. 12 | 13 | 1. Препроцессинг (g++ -E) 14 | 2. Компиляция (g++ -c) -S для вызова ассемблера 15 | 3. Компоновка (ld) 16 | 17 | Оптимизации. -O0/1/2/3 18 | Опция -D задать переменную для сборки. 19 | 20 | Санитайзеры: -fsanitize=address/memory/undefined 21 | 22 | Для языков семейства Си нет единого стандарта, как должен быть отформатирован код. Есть несколько сложившихся в Open Source стандартов, которые задаются опцией --style=ИМЯ: LLVM, GNU, Google, Chromium, Microsoft, Mozilla, WebKit. Если указать опцию --style=file, то стандарт оформления будет использован из локального файла .clang-format (имя начинается с символа точки). Файл .clang-format может располагаться не только в одном каталоге с исходным файлом, но и в любом каталоге выше по иерархии, - в этом случае будет использован первый найденный файл. 23 | 24 | По умолчанию утилита clang-format выводит преобразованный исходный файл на стандартный поток вывода, опция -i (inplace) указывает, что необходимо перезаписать исходный файл. 25 | 26 | # Makefile 27 | 28 | Пример разобранного Makefile можно взглянуть [здесь](/sems/sem-02/project/Makefile). Разберем основные вещи: 29 | * Makefile - bash-like скрипт для сборки. 30 | * Ключевое понятие - таргет сборки. 31 | * Таргет состоит из зависимостей и команды. Например, взглянем на таргет: 32 | ```Makefile 33 | all: library main 34 | $(LINK) -o alert library.so main.o 35 | ``` 36 | 37 | Здесь мы говорим, что сначала должны быть собраны таргеты library и main, а затем мы статически линкуем 2 таргета. 38 | 39 | Пробелы и отступы **важны** при задании Makefile. Полезная опция: `make -j16 all` - собрать таргет all используя 16 ядер процессора. -------------------------------------------------------------------------------- /sems/sem-02/a.cpp: -------------------------------------------------------------------------------- 1 | #include "b.h" 2 | #include 3 | #include 4 | #include 5 | #include 6 | 7 | #ifdef TOKEN 8 | const char * token = TOKEN; 9 | #else 10 | const char * token = "hello world"; 11 | #endif 12 | 13 | int x = 5; 14 | 15 | int main() { 16 | alert(token); 17 | std::string y = "124"; 18 | std::string_view x = y; 19 | 20 | std::optional n = 5; 21 | 22 | return 0; 23 | } 24 | -------------------------------------------------------------------------------- /sems/sem-02/b.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | extern int x; 4 | 5 | void alert(const char* message) { 6 | std::cout << "ALERT: " << x << " " << message << '\n'; 7 | } 8 | -------------------------------------------------------------------------------- /sems/sem-02/b.h: -------------------------------------------------------------------------------- 1 | void alert(const char*); 2 | -------------------------------------------------------------------------------- /sems/sem-02/ld.sh: -------------------------------------------------------------------------------- 1 | ld a.o b.o -lc /usr/lib/libc++.dylib -macosx_version_min 10.10.0 -o ld_prog 2 | -------------------------------------------------------------------------------- /sems/sem-02/optimize.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int64_t get_result() { 5 | int64_t value = 0; 6 | 7 | for (int64_t i = 1; i < 1e9; ++i) { 8 | value += i; 9 | } 10 | return value; 11 | } 12 | 13 | int main() { 14 | std::cout << get_result() << std::endl; 15 | 16 | return 0; 17 | } 18 | -------------------------------------------------------------------------------- /sems/sem-02/project/Makefile: -------------------------------------------------------------------------------- 1 | CC=g++ 2 | LINK=g++ 3 | CFLAGS=-fPIC 4 | 5 | UNAME=$(shell uname -s) 6 | ifeq ($(UNAME), Darwin) 7 | OS=APPLE 8 | endif 9 | ifeq ($(UNAME), Linux) 10 | OS=LINUX 11 | endif 12 | 13 | build: all 14 | 15 | all: library main 16 | $(LINK) -o alert library.so main.o 17 | 18 | library: 19 | $(CC) -shared $(CFLAGS) library.cpp -o library.so 20 | 21 | main: 22 | $(CC) -c $(CFLAGS) main.cpp -o main.o 23 | 24 | clean: 25 | rm -rf *.o || true 26 | 27 | distclean: clean 28 | rm -rf alert library.so || true 29 | 30 | fmt: 31 | clang-format -i --style=Google *.cpp *.h 32 | -------------------------------------------------------------------------------- /sems/sem-02/project/library.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | #ifdef __OS__ 4 | const char* os = __OS__; 5 | #else 6 | const char* os = "undefined"; 7 | #endif 8 | 9 | void alert() { std::cout << os << std::endl; } 10 | -------------------------------------------------------------------------------- /sems/sem-02/project/library.h: -------------------------------------------------------------------------------- 1 | // #include Why is wrong? 2 | 3 | void alert(); 4 | -------------------------------------------------------------------------------- /sems/sem-02/project/library.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alexponomarev7/cplusplus-advance-sem/ebc23a5d406670a1fbe8079644d42f716342cfec/sems/sem-02/project/library.so -------------------------------------------------------------------------------- /sems/sem-02/project/main.cpp: -------------------------------------------------------------------------------- 1 | #include "library.h" 2 | 3 | int main() { 4 | alert(); 5 | return 0; 6 | } 7 | -------------------------------------------------------------------------------- /sems/sem-02/project/main.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alexponomarev7/cplusplus-advance-sem/ebc23a5d406670a1fbe8079644d42f716342cfec/sems/sem-02/project/main.o -------------------------------------------------------------------------------- /sems/sem-02/project/test/Makefile: -------------------------------------------------------------------------------- 1 | main: 2 | g++ $(target) 3 | -------------------------------------------------------------------------------- /sems/sem-02/project/test/p.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alexponomarev7/cplusplus-advance-sem/ebc23a5d406670a1fbe8079644d42f716342cfec/sems/sem-02/project/test/p.cpp -------------------------------------------------------------------------------- /sems/sem-02/ub.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | 5 | int check(int x) { 6 | int* x = new int; 7 | return x + 1 > x; 8 | } 9 | 10 | int main() { 11 | printf("%d", check(INT_MAX)); 12 | 13 | return 0; 14 | } 15 | 16 | -------------------------------------------------------------------------------- /sems/sem-03.md: -------------------------------------------------------------------------------- 1 | # Remote developing. Git. 2 | ## AWS 3 | 4 | Amazon Web Services (AWS) — коммерческое публичное облако, поддерживаемое и развиваемое компанией Amazon с 2006 года. Предоставляет подписчикам услуги как по инфраструктурной модели (виртуальные серверы, ресурсы хранения), так и платформенного уровня (облачные базы данных, облачное связующее программное обеспечение, облачные бессерверные вычисления, средства разработки). 5 | 6 | По .edu почте можно получить привеллегии студентов github student developer pack, для этого переходим сюда https://education.github.com/pack/join. Туда также входит AWS Edu, чтобы была возможность бесплатно поработать с облачными технологиями. 7 | 8 | Как только мы получили право на некоммерческое использование делаем следующие шаги: 9 | * Заходим в [консоль](https://us-east-2.console.aws.amazon.com/console). 10 | * Выбираем запуск виртуальной машины. 11 | * Выбираем запуск инстанса на Amazon Linux x86 12 | * Ждём пару минут и затем можем подключаться по ssh. 13 | 14 | **Ключевые слова**: облако, виртуальная машина. 15 | 16 | ## SSH 17 | 18 | Почти всегда возникает потребность в работе на удаленной машине. Для разработки, сборки, деплоя. 19 | Утилита ssh позволяет установиться безопасное соедение через RSA шифрование (далее ssh сессия). 20 | 21 | Сначала нужно сгенерировать ключ с помощью утилиты ssh-keygen, которая положить в .ssh публичный и приватный ключ. 22 | 23 | Для подключения к удаленной машине достаточно написать просто ssh host, тогда будет использоваться дефолтный ключ ~/.ssh/id_rsa. **Полезные флаги**: -i, -A. 24 | 25 | ## Git 26 | 27 | Система контроля версий. Существуют также альтернативные подходы, например, svn. 28 | 29 | Список команд: 30 | * git init - инициализировать local git репозиторий в текущей директории 31 | * git remote add origin (http/ssh) - привязать local репозиторий к remote с именем origin 32 | * git remote remove origin - удалить в локальных записях информацию о remote репозитории с именем origin 33 | * git branch branch_name - создать локальную ветку 34 | * git branch -d - удалить локальную ветку 35 | * git branch -D - удалить remote ветку привязанну 36 | * git checkout -b branch_name - создать ветку и переключиться на нее 37 | * git checkout branch_name - переключиться на ветку 38 | * git add filename - добавить в текущий коммит файл 39 | * git add -u - отслеживаем модификации над уже существующими в репозитории файлами 40 | * git add . - отслеживаем все новые файлы и модификация, без отслеживания удалений 41 | * git add -A - git add -u; git add .; git add -A 42 | * git commit -m "message" - создать коммит с сообщением 43 | * git push -u origin - запушить ветку с привязкой к remote origin 44 | * git push - запушить ветку в remote 45 | * git push -f - запушить ветку с изменением историев коммитов, не рекомендуется 46 | * git fetch - подгрузить изменения из remote, но не применять их 47 | * git pull - то же что и fetch только с применением изменений к текущей ветке 48 | * git merge branch - сделать слияние веток 49 | * git reset commit - откатить ветку до какого-то коммита 50 | * git reset --hard - откатить ветку до какого-то коммита небезопасно 51 | * git checkout commit_hash - переключиться на определенный коммит и коммит будет находиться в состоянии detached 52 | * git log - посмотреть историю коммитов в репозитории 53 | * git stash - сохранить текущие незакомиченные изменения в stash 54 | * git stash pop - вернуть из stash незакомиченные 55 | * git rebase - позволяет изменить историю репозитория 56 | * git cherry-pick - перенести коммит из одной ветки в другую 57 | 58 | Существует 3 популярных открытых хостингов remote репозиториев: github, gitlab, bitbucket -------------------------------------------------------------------------------- /sems/sem-04.md: -------------------------------------------------------------------------------- 1 | # IDE. Cmake. 2 | 3 | ## VS Code 4 | 5 | В сравнении с другими популярными аналогами выделяется: 6 | * Простотой настройки remote developing 7 | * Легковесность 8 | * Большой магазин плагинов под разработку для различных языков, например, я в VS code пишу под C++, Python, Go, Rust 9 | 10 | Полезные ссылки: 11 | * [Гайд по настройке remote developing](https://code.visualstudio.com/docs/remote/remote-overview) 12 | * [C++ developer pack](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools-extension-pack) 13 | 14 | ## Cmake 15 | 16 | Более высокоуровневый язык для сборки проекта. Позволяет описывать сборку проекта и выдывать Makefile на основе высокоуровневых правил. 17 | Правила описываются в CMakeLists.txt. 18 | 19 | * Задать имя проекта `project(cpp_course)` 20 | * Установить версию cmake `cmake_minimum_required(VERSION 3.10)` 21 | * Инструкция для выставления внутренних переменных `set(VARIABLE_NAME VALUE)`. Полезные built-in переменные: CMAKE_CXX_STANDARD, CMAKE_MODULE_PATH, CMAKE_RUNTIME_OUTPUT_DIRECTORY, CMAKE_LIBRARY_OUTPUT_DIRECTORY, CMAKE_EXPORT_COMPILE_COMMANDS. 22 | * CMAKE_BINARY_DIR - путь до того где будут бинарники (откуда запускаем cmake), CMAKE_SOURCE_DIR - расположение корневого cmake файла 23 | * Добавить исполняемый таргет для сборки `add_executable(TARGET_NAME SOURCE)`. Например, часто используются вспомогательные переменные: `set(SOURCE main.cpp); add_executable(target ${SOURCE});` 24 | * Добавить библиотеку для сборки `add_library(LIBRARY_NAME SOURCE)` 25 | * Прилинковать библиотеку `target_link_libraries(TARGET TYPE LIB_NAME)`, где TYPE может быть PUBLIC, PRIVATE, INTERFACE 26 | * Добавить путь до headers `target_include_directories(TARGET TYPE PATH)`, в основном legacy 27 | * Подключить cmake файл `include(file.cmake)` 28 | * Подключить cmake директорию `add_subdirectory(subdir)` 29 | * Проверить наличие библиотеки `find_package(package)` 30 | 31 | Есть альтернативные build-системы, например, [ninja](https://ninja-build.org). 32 | Есть также пакетный менеджер для C++ библиотек, например, [conan](https://conan.io). -------------------------------------------------------------------------------- /sems/sem-05.md: -------------------------------------------------------------------------------- 1 | # Bash advanced. 2 | 3 | Bash-скрипты - набор команд bash'a, которые можно исполнить запуском скриптом. 4 | 5 | ## Functions. 6 | 7 | ```bash 8 | #!/bin/bash 9 | 10 | second() { 11 | echo $2 12 | } 13 | 14 | second $1 $2 $3 15 | ``` 16 | Результат: 17 | ```bash 18 | ./script.sh 1 2 3 19 | 2 20 | ``` 21 | 22 | Функции задаются как func() {}, внутри func исполняются команды, которые по умолчанию печатают результат в stdout. 23 | * Обращаться к аргументам функции можно через `$i`. 24 | * Чтобы получить список всех аргументов можно обратиться `$@`. Также есть `$*`, но в этом предлагается разобраться самим при большом желании. 25 | * Количество аргументов в десятичном формате `$#`. 26 | * Статус выполненой последней команды `$?`. 27 | 28 | Мы можем также сохранить результат выполнения функции в переменную: 29 | ```bash 30 | VAR=$(second $1 $2 $3) 31 | ``` 32 | 33 | Команда `exit` позволяет раньше времени завершить скрипт с заданным кодом. 34 | 35 | Функции могут возвращать статус выполнения от 0 до 255, его можно вернуть через return. 36 | ```bash 37 | simple() { 38 | return 124 39 | } 40 | simple 41 | echo $? 42 | ``` 43 | 44 | Чтобы подключить функции из bash файла достаточно выполнить команду `source`. 45 | 46 | -------------------------------------------------------------------------------- /sems/sem-06.md: -------------------------------------------------------------------------------- 1 | # C basics. 2 | ## IO 3 | * scanf(format_str, param1, ...) - форматное чтение 4 | * printf(format_str, param1, ...) - форматная запись 5 | 6 | format_str использует индификаторы для подстановки, которые начинаются с токена `%`. 7 | * `%c` - char 8 | * `%d` - decimal signed int 9 | * `%u` - decimal unsigned int 10 | * `%f` - float 11 | * `%x` - 0x, hex 12 | * `%р` - ptr 13 | 14 | К индетификатором можно добавлять суффиксы `l`, `ll`, `h`, `hh`, `z` и другие. 15 | Подробнее [здесь](https://en.cppreference.com/w/c/io/fscanf). 16 | 17 | ## Memory 18 | * malloc(size_t) - возвращает void* на память 19 | * calloc(size_t num, size_t size) - возвращает num * size void* 20 | * realloc(void*, size_t) - изменяем размер аллоцированной памяти по этому указателю 21 | В случае ошибки возвращается NULL. Необходимо это проверять. 22 | * free(void*) - в случае неверное переданного указателя UB. 23 | 24 | Для операциями с памятью стоит пользоваться следующими функциями: 25 | * memset(dst, c, size) 26 | * memmove(dst, src, size) - [dst, dst + size) и [src, src + size) могут пересекаться 27 | * memcpy(dst, src, size) - [dst, dst + size) и [src, src + size) **не** могут пересекаться 28 | Такие функции сильно быстрее засчёт векторных инструкций. 29 | 30 | Как мы рассмотрели на семинаре компилятор с оптимизациями сам пытается детектировать тривиальную имплементацию этих функций и заменяет их на вызов библиотечное. 31 | 32 | ## C-string 33 | Строки в C - это указатель char* с нуль-терминантом. 34 | TLDR; -------------------------------------------------------------------------------- /sems/sem-06/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | project(sample) 2 | 3 | add_executable(main main.c) -------------------------------------------------------------------------------- /sems/sem-06/a.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alexponomarev7/cplusplus-advance-sem/ebc23a5d406670a1fbe8079644d42f716342cfec/sems/sem-06/a.out -------------------------------------------------------------------------------- /sems/sem-06/main.c: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | int main() { 4 | int x; 5 | 6 | char* test = "hello"; 7 | char* test1 = "printf"; 8 | test[1] = 'a'; 9 | printf("%s", test); 10 | 11 | return 0; 12 | } -------------------------------------------------------------------------------- /sems/sem-06/main.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alexponomarev7/cplusplus-advance-sem/ebc23a5d406670a1fbe8079644d42f716342cfec/sems/sem-06/main.o -------------------------------------------------------------------------------- /sems/sem-06/main.s: -------------------------------------------------------------------------------- 1 | .section __TEXT,__text,regular,pure_instructions 2 | .build_version macos, 10, 15 sdk_version 10, 15, 6 3 | .globl _main ## -- Begin function main 4 | .p2align 4, 0x90 5 | _main: ## @main 6 | .cfi_startproc 7 | ## %bb.0: 8 | pushq %rbp 9 | .cfi_def_cfa_offset 16 10 | .cfi_offset %rbp, -16 11 | movq %rsp, %rbp 12 | .cfi_def_cfa_register %rbp 13 | subq $32, %rsp 14 | movl $0, -4(%rbp) 15 | leaq L_.str(%rip), %rax 16 | movq %rax, -16(%rbp) 17 | movq -16(%rbp), %rax 18 | movb $0, 5(%rax) 19 | movq -16(%rbp), %rsi 20 | leaq L_.str.1(%rip), %rdi 21 | movb $0, %al 22 | callq _printf 23 | xorl %ecx, %ecx 24 | movl %eax, -20(%rbp) ## 4-byte Spill 25 | movl %ecx, %eax 26 | addq $32, %rsp 27 | popq %rbp 28 | retq 29 | .cfi_endproc 30 | ## -- End function 31 | .section __TEXT,__cstring,cstring_literals 32 | L_.str: ## @.str 33 | .asciz "hello" 34 | 35 | L_.str.1: ## @.str.1 36 | .asciz "%s" 37 | 38 | .subsections_via_symbols 39 | -------------------------------------------------------------------------------- /sems/sem-07.md: -------------------------------------------------------------------------------- 1 | # Object-oriented programming 2 | ## Constructor 3 | 4 | Рассмотрим класс T: 5 | * ```c++ explicit T(U other)``` - запретить неявное приведение типов от U к T 6 | * ```c++ explicit operator bool() const { ... }``` - запретить неявное приведение типа T к bool 7 | * member initializer lists позволяет проинициализировать перемнные "до" тела конструктора, т.е., например, можно проиницилизировать поле с типом ```c++ const int&```, а в теле уже нельзя. Поля инициализируются **всегда** в порядке объявления. 8 | * Если ни один конструктор не объявлен, то компилятор создает неявный конструктор. 9 | * ```c++ T() = default;``` создает конструктор по умолчанию, **неэквивалентно** ```c++ T() = {}```. В первом случае класс остается [trivial](https://en.cppreference.com/w/cpp/named_req/TrivialType). В некоторых случаях компилятор заменяет default на delete, например, когда есть поле ```c++ const int&```. 10 | * ```c++ T() = delete;``` - позволяет удалить конструктор, в некоторых случаях имеет смысл сделать конструктор приватным, например, для класса Singleton (см. ниже). 11 | 12 | ```c++ 13 | class Singleton { 14 | public: 15 | static Singleton& instance() { 16 | static Singleton object; 17 | return object; 18 | } 19 | private: 20 | Singleton() = default; 21 | } 22 | ``` 23 | 24 | ## Operator 25 | Некоторые операторы можно перегружать. [Подробнее тут](https://en.cppreference.com/w/cpp/language/operators). 26 | Рассмотрим базовые идеи на основе класса String. 27 | 28 | * const, & qualifiers. Позволяет указать у метода ограничения на *this*. У объекта с типом const String можно вызывать только const методы. Идейно методы с & qualifier можно вызывать только от объектов, от которых можно взять ссылку. Более формально обсудим, когда пройдем lvalue/rvalue... Это полезно, например, в ```c++ String& operator=(const String& other)```, чтобы запрещать конструкции вида ```c++ a + b = c```. 29 | * operator+ лучше реализовывать через ```operator+=``` для избежания лишнего копирования. А также вне класса, чтобы не было ограничения на левый типа класса от оператора. 30 | * [RVO](https://en.cppreference.com/w/cpp/language/copy_elision). Из-за этой оптимизации стоит помочь компилятору и в ```c++ operator+```возвращать не ```c++ return a += b;``` так как возвращаемое значение String& у operator+=. 31 | 32 | ## operator<=> 33 | ```c++ auto operator<=>(const T& other) = default;``` Реализует оператор <=>, тип возвращаемого значения ```c++ std::strong_ordering```. Constants: less, equivalent, equal, greater. Реализация по умолчанию производит сравнение лексиграфически по полям класса. Можно сделать свою реализацию. 34 | 35 | Благодаря этому операцию появляется возможность для всех 6 операторов: <, >, <=, >=, ==, !=. Компилятор заменяет выражение `a @ b` на `(a <=> b) @ 0`. 36 | 37 | ## operator== 38 | TLDR; 39 | -------------------------------------------------------------------------------- /sems/sem-07/a.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alexponomarev7/cplusplus-advance-sem/ebc23a5d406670a1fbe8079644d42f716342cfec/sems/sem-07/a.out -------------------------------------------------------------------------------- /sems/sem-07/main.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | #include 6 | 7 | class String { 8 | public: 9 | // constuctor 10 | explicit String(char* str) : str_(str) 11 | {} 12 | 13 | String& operator=(const String& other) & { 14 | str_ = other.str_; 15 | return *this; 16 | } 17 | 18 | char& operator[](size_t index) { 19 | return str_[index]; 20 | } 21 | 22 | char operator[](size_t index) const { 23 | return str_[index]; 24 | } 25 | 26 | String& operator+=(const String& other) { 27 | // this - String* 28 | // *this - String& 29 | 30 | // some code to add other 31 | 32 | return *this; 33 | } 34 | 35 | int add() { 36 | return 1; 37 | } 38 | 39 | // Is ok here? 40 | // RVO - return value optimization 41 | // String operator+(const String& other) { 42 | // String a(*this); // copy-constructor 43 | // a += other; 44 | // return a; 45 | // } 46 | 47 | 48 | 49 | 50 | private: 51 | char* str_; 52 | // const char* m_sStr 53 | }; 54 | 55 | String operator+(const String& lhs, const String& rhs) { 56 | String a(lhs); // copy-constructor 57 | a += rhs; 58 | return a; 59 | } 60 | 61 | String create_string() { 62 | String s = String("hello"); // Is it RVO? 63 | return s; 64 | } 65 | 66 | struct A { 67 | int a; 68 | char b; 69 | 70 | bool operator<(const A& other) const { 71 | return std::tie(a, b) < std::tie(other.a, other.b); 72 | } 73 | 74 | bool operator<=(const A& other) const { 75 | return std::tie(a, b) < std::tie(other.a, other.b); 76 | } 77 | 78 | }; 79 | 80 | 81 | class IntWrapper { 82 | public: 83 | IntWrapper() = default; 84 | IntWrapper(const IntWrapper& other) = default; 85 | 86 | IntWrapper& operator++() { 87 | std::cout << "prefix" << std::endl; 88 | x_ += 1; 89 | y_ = 2; 90 | return *this; 91 | } 92 | 93 | IntWrapper operator++(int) { 94 | std::cout << "suffix" << std::endl; 95 | 96 | IntWrapper other(*this); 97 | x_ += 1; 98 | y_ = 0; 99 | return other; 100 | } 101 | 102 | 103 | 104 | auto operator<=>(const IntWrapper& other) const = default; 105 | 106 | 107 | 108 | // auto operator<=>(const IntWrapper& other) const { 109 | // if (x_ > other.x_) { 110 | // return std::strong_ordering::equal; 111 | // } 112 | // return std::strong_ordering::greater; 113 | // } 114 | 115 | private: 116 | int x_ = 0; 117 | int y_ = 0; 118 | }; 119 | 120 | int main() { 121 | IntWrapper x; 122 | IntWrapper y; 123 | 124 | y++; 125 | ++x; 126 | 127 | std::cout << ((y <=> x) > 0) << std::endl; 128 | 129 | String a = create_string(); 130 | String b = create_string(); 131 | 132 | //(a + b + b) = create_string(); 133 | 134 | return 0; 135 | } -------------------------------------------------------------------------------- /sems/sem-08.md: -------------------------------------------------------------------------------- 1 | # Debug. LLDB/GDB 2 | 3 | ## printf 4 | 5 | TLDR; 6 | 7 | ## GDB/LLDB 8 | 9 | GDB - утилита для отладки под лицензией GNU. 10 | LLDB - утилита из семейства LLVM. Из-за архитектурных особенностей LLVM как показывает практика наблюдается более стабильная работа LLDB в сравнение с GDB. 11 | 12 | [DWARF](https://habr.com/ru/post/199490/) - это стандартизованный формат отладочной информации. 13 | 14 | [Compiler explorer](https://godbolt.org/) - TLDR; 15 | 16 | ## Debug build 17 | 18 | Для того, чтобы отладка под GDB работала корректно необходима отладочная информация, это реализует флаг `-g`. Оптимизации могут приводить к большому рассхождению отладочной информации и скомпилированной программы. Чем выше уровнень оптимизации, тем больше странного поведения может наблюдаться. Поэтому рекомендованный типичный кейс использования там, где это возможно: `g++ -O0 -g main.cpp -o main`. Практика показывает, что также `g++ -O1 -fno-inline-functions -g main.cpp -o main` также имеет быть. 19 | 20 | ## Breakpoint 21 | 22 | Breakpoint - ключевое понятие в отладке, место в программе, где мы хотим остановить выполнение. Реализовано через механизм прерываний. 23 | 24 | Допустим у нас была следующая функция func. 25 | 26 | ```asm 27 | func: 28 | push rbp // 55 29 | mov rbp,rsp // 48 89 e5 30 | mov eax,0x0 // b8 00 00 00 00 31 | ret // c3 32 | ``` 33 | 34 | Мы хотим поставить breakpoint на вход в нёё, gdb преобразует её код в следующее: 35 | 36 | ```asm 37 | func: 38 | int3 // cc -> gdb запоминает byte, который заменил, а именно 0x55 39 | mov rbp,rsp // 48 89 e5 40 | mov eax,0x0 // b8 00 00 00 00 41 | ret // c3 42 | ``` 43 | 44 | Срабатывает обработчик прерывания и мы попадаем в gdb shell, gdb возвращает измененный байт. 45 | 46 | * b function - установить breakpoint на начало исполнения функции function. 47 | * b main.cpp:40 - установить breakpoint на строчку в файле. 48 | * b ... if var==123 - установить breakpoint при выполнения условия. Переменные достаются из области вызова breakpoint'а. 49 | * rbreak regex - установить beakpoint'ы по регулярному выражению. 50 | * tbreak ... - устновить временный breakpoint (удаляется после первого просматривания). 51 | * info b - просмотреть информацию по всем breakpoint 52 | * delete #id - удалить breakpoint c номером #id 53 | * enable/disable #id - включить/выключить breakpoint с номером #id 54 | * command #id - установить комманду при срабатывании этого breakpoint 55 | 56 | ## GDB shell 57 | 58 | * gdb prog --args 1 2 3 - запустить gdb для prog с параметрами коммандной строки `1 2 3`. 59 | * gdb --pid 123 - запустить gdb для рабочего процесса с pid 123. 60 | * run ... - запустить исполнение программы. Тут может любой валидный bash-script. Например, `run 1 2 3 CMakeFiles/lib.dir/lib.cpp.i 81 | 82 | CMakeFiles/lib.dir/lib.cpp.s: cmake_force 83 | @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/lib.dir/lib.cpp.s" 84 | /Library/Developer/CommandLineTools/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Users/aponomarev/cplusplus-advance-sem/sems/sem-09/lib.cpp -o CMakeFiles/lib.dir/lib.cpp.s 85 | 86 | # Object files for target lib 87 | lib_OBJECTS = \ 88 | "CMakeFiles/lib.dir/lib.cpp.o" 89 | 90 | # External object files for target lib 91 | lib_EXTERNAL_OBJECTS = 92 | 93 | liblib.a: CMakeFiles/lib.dir/lib.cpp.o 94 | liblib.a: CMakeFiles/lib.dir/build.make 95 | liblib.a: CMakeFiles/lib.dir/link.txt 96 | @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/Users/aponomarev/cplusplus-advance-sem/sems/sem-09/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking CXX static library liblib.a" 97 | $(CMAKE_COMMAND) -P CMakeFiles/lib.dir/cmake_clean_target.cmake 98 | $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/lib.dir/link.txt --verbose=$(VERBOSE) 99 | 100 | # Rule to build all files generated by this target. 101 | CMakeFiles/lib.dir/build: liblib.a 102 | .PHONY : CMakeFiles/lib.dir/build 103 | 104 | CMakeFiles/lib.dir/clean: 105 | $(CMAKE_COMMAND) -P CMakeFiles/lib.dir/cmake_clean.cmake 106 | .PHONY : CMakeFiles/lib.dir/clean 107 | 108 | CMakeFiles/lib.dir/depend: 109 | cd /Users/aponomarev/cplusplus-advance-sem/sems/sem-09/build && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/aponomarev/cplusplus-advance-sem/sems/sem-09 /Users/aponomarev/cplusplus-advance-sem/sems/sem-09 /Users/aponomarev/cplusplus-advance-sem/sems/sem-09/build /Users/aponomarev/cplusplus-advance-sem/sems/sem-09/build /Users/aponomarev/cplusplus-advance-sem/sems/sem-09/build/CMakeFiles/lib.dir/DependInfo.cmake --color=$(COLOR) 110 | .PHONY : CMakeFiles/lib.dir/depend 111 | 112 | -------------------------------------------------------------------------------- /sems/sem-09/build/CMakeFiles/lib.dir/cmake_clean.cmake: -------------------------------------------------------------------------------- 1 | file(REMOVE_RECURSE 2 | "CMakeFiles/lib.dir/lib.cpp.o" 3 | "CMakeFiles/lib.dir/lib.cpp.o.d" 4 | "liblib.a" 5 | "liblib.pdb" 6 | ) 7 | 8 | # Per-language clean rules from dependency scanning. 9 | foreach(lang CXX) 10 | include(CMakeFiles/lib.dir/cmake_clean_${lang}.cmake OPTIONAL) 11 | endforeach() 12 | -------------------------------------------------------------------------------- /sems/sem-09/build/CMakeFiles/lib.dir/cmake_clean_target.cmake: -------------------------------------------------------------------------------- 1 | file(REMOVE_RECURSE 2 | "liblib.a" 3 | ) 4 | -------------------------------------------------------------------------------- /sems/sem-09/build/CMakeFiles/lib.dir/compiler_depend.make: -------------------------------------------------------------------------------- 1 | # CMAKE generated file: DO NOT EDIT! 2 | # Generated by "Unix Makefiles" Generator, CMake Version 3.21 3 | 4 | CMakeFiles/lib.dir/lib.cpp.o: ../lib.cpp \ 5 | ../lib.h \ 6 | /Library/Developer/CommandLineTools/usr/include/c++/v1/queue \ 7 | /Library/Developer/CommandLineTools/usr/include/c++/v1/__config \ 8 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/pthread.h \ 9 | /Library/Developer/CommandLineTools/usr/include/c++/v1/deque \ 10 | /Library/Developer/CommandLineTools/usr/include/c++/v1/__split_buffer \ 11 | /Library/Developer/CommandLineTools/usr/include/c++/v1/type_traits \ 12 | /Library/Developer/CommandLineTools/usr/include/c++/v1/cstddef \ 13 | /Library/Developer/CommandLineTools/usr/include/c++/v1/__cxx_version \ 14 | /Library/Developer/CommandLineTools/usr/lib/clang/12.0.0/include/stddef.h \ 15 | /Library/Developer/CommandLineTools/usr/lib/clang/12.0.0/include/__stddef_max_align_t.h \ 16 | /Library/Developer/CommandLineTools/usr/include/c++/v1/__nullptr \ 17 | /Library/Developer/CommandLineTools/usr/include/c++/v1/algorithm \ 18 | /Library/Developer/CommandLineTools/usr/include/c++/v1/initializer_list \ 19 | /Library/Developer/CommandLineTools/usr/include/c++/v1/cstring \ 20 | /Library/Developer/CommandLineTools/usr/include/c++/v1/string.h \ 21 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/string.h \ 22 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types.h \ 23 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types.h \ 24 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/cdefs.h \ 25 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_symbol_aliasing.h \ 26 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_posix_availability.h \ 27 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/machine/_types.h \ 28 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/_types.h \ 29 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_pthread/_pthread_types.h \ 30 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/Availability.h \ 31 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/AvailabilityVersions.h \ 32 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/AvailabilityInternal.h \ 33 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_size_t.h \ 34 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_null.h \ 35 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_rsize_t.h \ 36 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/machine/types.h \ 37 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/types.h \ 38 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_int8_t.h \ 39 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_int16_t.h \ 40 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_int32_t.h \ 41 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_int64_t.h \ 42 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_u_int8_t.h \ 43 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_u_int16_t.h \ 44 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_u_int32_t.h \ 45 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_u_int64_t.h \ 46 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_intptr_t.h \ 47 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_uintptr_t.h \ 48 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_errno_t.h \ 49 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_ssize_t.h \ 50 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/strings.h \ 51 | /Library/Developer/CommandLineTools/usr/include/c++/v1/utility \ 52 | /Library/Developer/CommandLineTools/usr/include/c++/v1/__tuple \ 53 | /Library/Developer/CommandLineTools/usr/include/c++/v1/cstdint \ 54 | /Library/Developer/CommandLineTools/usr/include/c++/v1/stdint.h \ 55 | /Library/Developer/CommandLineTools/usr/lib/clang/12.0.0/include/stdint.h \ 56 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/stdint.h \ 57 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_uint8_t.h \ 58 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_uint16_t.h \ 59 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_uint32_t.h \ 60 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_uint64_t.h \ 61 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_intmax_t.h \ 62 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_uintmax_t.h \ 63 | /Library/Developer/CommandLineTools/usr/include/c++/v1/__debug \ 64 | /Library/Developer/CommandLineTools/usr/include/c++/v1/iosfwd \ 65 | /Library/Developer/CommandLineTools/usr/include/c++/v1/wchar.h \ 66 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/wchar.h \ 67 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_mbstate_t.h \ 68 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_ct_rune_t.h \ 69 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_rune_t.h \ 70 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_wchar_t.h \ 71 | /Library/Developer/CommandLineTools/usr/lib/clang/12.0.0/include/stdarg.h \ 72 | /Library/Developer/CommandLineTools/usr/include/c++/v1/stdio.h \ 73 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/stdio.h \ 74 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_stdio.h \ 75 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_va_list.h \ 76 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/stdio.h \ 77 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_ctermid.h \ 78 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_off_t.h \ 79 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/time.h \ 80 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_clock_t.h \ 81 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_time_t.h \ 82 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_timespec.h \ 83 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_wctype.h \ 84 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/__wctype.h \ 85 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_wint_t.h \ 86 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_wctype_t.h \ 87 | /Library/Developer/CommandLineTools/usr/include/c++/v1/ctype.h \ 88 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/ctype.h \ 89 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_ctype.h \ 90 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/runetype.h \ 91 | /Library/Developer/CommandLineTools/usr/include/c++/v1/memory \ 92 | /Library/Developer/CommandLineTools/usr/include/c++/v1/typeinfo \ 93 | /Library/Developer/CommandLineTools/usr/include/c++/v1/exception \ 94 | /Library/Developer/CommandLineTools/usr/include/c++/v1/cstdlib \ 95 | /Library/Developer/CommandLineTools/usr/include/c++/v1/stdlib.h \ 96 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/stdlib.h \ 97 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/wait.h \ 98 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_pid_t.h \ 99 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_id_t.h \ 100 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/signal.h \ 101 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/appleapiopts.h \ 102 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/machine/signal.h \ 103 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/signal.h \ 104 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/machine/_mcontext.h \ 105 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/_mcontext.h \ 106 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/mach/machine/_structs.h \ 107 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/mach/i386/_structs.h \ 108 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_pthread/_pthread_attr_t.h \ 109 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_sigaltstack.h \ 110 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_ucontext.h \ 111 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_sigset_t.h \ 112 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_uid_t.h \ 113 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/resource.h \ 114 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_timeval.h \ 115 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/machine/endian.h \ 116 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/endian.h \ 117 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_endian.h \ 118 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/libkern/_OSByteOrder.h \ 119 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/libkern/i386/_OSByteOrder.h \ 120 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/alloca.h \ 121 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/malloc/_malloc.h \ 122 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_dev_t.h \ 123 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_mode_t.h \ 124 | /Library/Developer/CommandLineTools/usr/include/c++/v1/math.h \ 125 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/math.h \ 126 | /Library/Developer/CommandLineTools/usr/include/c++/v1/limits \ 127 | /Library/Developer/CommandLineTools/usr/include/c++/v1/__undef_macros \ 128 | /Library/Developer/CommandLineTools/usr/include/c++/v1/new \ 129 | /Library/Developer/CommandLineTools/usr/include/c++/v1/iterator \ 130 | /Library/Developer/CommandLineTools/usr/include/c++/v1/__functional_base \ 131 | /Library/Developer/CommandLineTools/usr/include/c++/v1/tuple \ 132 | /Library/Developer/CommandLineTools/usr/include/c++/v1/stdexcept \ 133 | /Library/Developer/CommandLineTools/usr/include/c++/v1/atomic \ 134 | /Library/Developer/CommandLineTools/usr/include/c++/v1/cassert \ 135 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/assert.h \ 136 | /Library/Developer/CommandLineTools/usr/include/c++/v1/functional \ 137 | /Library/Developer/CommandLineTools/usr/include/c++/v1/bit \ 138 | /Library/Developer/CommandLineTools/usr/include/c++/v1/vector \ 139 | /Library/Developer/CommandLineTools/usr/include/c++/v1/__bit_reference \ 140 | /Library/Developer/CommandLineTools/usr/include/c++/v1/climits \ 141 | /Library/Developer/CommandLineTools/usr/include/c++/v1/limits.h \ 142 | /Library/Developer/CommandLineTools/usr/lib/clang/12.0.0/include/limits.h \ 143 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/limits.h \ 144 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/machine/limits.h \ 145 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/limits.h \ 146 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/_limits.h \ 147 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/syslimits.h \ 148 | /Library/Developer/CommandLineTools/usr/include/c++/v1/string \ 149 | /Library/Developer/CommandLineTools/usr/include/c++/v1/string_view \ 150 | /Library/Developer/CommandLineTools/usr/include/c++/v1/__string \ 151 | /Library/Developer/CommandLineTools/usr/include/c++/v1/cstdio \ 152 | /Library/Developer/CommandLineTools/usr/include/c++/v1/cwchar \ 153 | /Library/Developer/CommandLineTools/usr/include/c++/v1/cwctype \ 154 | /Library/Developer/CommandLineTools/usr/include/c++/v1/cctype \ 155 | /Library/Developer/CommandLineTools/usr/include/c++/v1/wctype.h \ 156 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/wctype.h \ 157 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_wctrans_t.h \ 158 | /Library/Developer/CommandLineTools/usr/include/c++/v1/optional 159 | 160 | 161 | /Library/Developer/CommandLineTools/usr/include/c++/v1/cctype: 162 | 163 | /Library/Developer/CommandLineTools/usr/include/c++/v1/cwctype: 164 | 165 | /Library/Developer/CommandLineTools/usr/include/c++/v1/cwchar: 166 | 167 | /Library/Developer/CommandLineTools/usr/include/c++/v1/__string: 168 | 169 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/_limits.h: 170 | 171 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/limits.h: 172 | 173 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/limits.h: 174 | 175 | /Library/Developer/CommandLineTools/usr/include/c++/v1/climits: 176 | 177 | /Library/Developer/CommandLineTools/usr/include/c++/v1/vector: 178 | 179 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/assert.h: 180 | 181 | /Library/Developer/CommandLineTools/usr/include/c++/v1/atomic: 182 | 183 | /Library/Developer/CommandLineTools/usr/include/c++/v1/stdexcept: 184 | 185 | /Library/Developer/CommandLineTools/usr/include/c++/v1/__functional_base: 186 | 187 | /Library/Developer/CommandLineTools/usr/include/c++/v1/new: 188 | 189 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_dev_t.h: 190 | 191 | /Library/Developer/CommandLineTools/usr/include/c++/v1/limits.h: 192 | 193 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/malloc/_malloc.h: 194 | 195 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/alloca.h: 196 | 197 | /Library/Developer/CommandLineTools/usr/include/c++/v1/__bit_reference: 198 | 199 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/libkern/i386/_OSByteOrder.h: 200 | 201 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/libkern/_OSByteOrder.h: 202 | 203 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/endian.h: 204 | 205 | /Library/Developer/CommandLineTools/usr/include/c++/v1/wctype.h: 206 | 207 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/machine/endian.h: 208 | 209 | /Library/Developer/CommandLineTools/usr/include/c++/v1/math.h: 210 | 211 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_sigset_t.h: 212 | 213 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_ucontext.h: 214 | 215 | /Library/Developer/CommandLineTools/usr/include/c++/v1/functional: 216 | 217 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_sigaltstack.h: 218 | 219 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_pthread/_pthread_attr_t.h: 220 | 221 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/mach/i386/_structs.h: 222 | 223 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/mach/machine/_structs.h: 224 | 225 | /Library/Developer/CommandLineTools/usr/include/c++/v1/iterator: 226 | 227 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/_mcontext.h: 228 | 229 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/signal.h: 230 | 231 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/signal.h: 232 | 233 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/wait.h: 234 | 235 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_id_t.h: 236 | 237 | /Library/Developer/CommandLineTools/usr/include/c++/v1/exception: 238 | 239 | /Library/Developer/CommandLineTools/usr/include/c++/v1/ctype.h: 240 | 241 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_errno_t.h: 242 | 243 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_wctype_t.h: 244 | 245 | /Library/Developer/CommandLineTools/usr/include/c++/v1/tuple: 246 | 247 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/runetype.h: 248 | 249 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/__wctype.h: 250 | 251 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_uid_t.h: 252 | 253 | /Library/Developer/CommandLineTools/usr/include/c++/v1/stdlib.h: 254 | 255 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_timespec.h: 256 | 257 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/math.h: 258 | 259 | /Library/Developer/CommandLineTools/usr/include/c++/v1/wchar.h: 260 | 261 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_time_t.h: 262 | 263 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/machine/limits.h: 264 | 265 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_ctermid.h: 266 | 267 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_int32_t.h: 268 | 269 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/ctype.h: 270 | 271 | /Library/Developer/CommandLineTools/usr/include/c++/v1/cassert: 272 | 273 | /Library/Developer/CommandLineTools/usr/include/c++/v1/typeinfo: 274 | 275 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/stdio.h: 276 | 277 | /Library/Developer/CommandLineTools/usr/include/c++/v1/stdio.h: 278 | 279 | /Library/Developer/CommandLineTools/usr/lib/clang/12.0.0/include/stdarg.h: 280 | 281 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/types.h: 282 | 283 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_stdio.h: 284 | 285 | /Library/Developer/CommandLineTools/usr/include/c++/v1/string_view: 286 | 287 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_wctype.h: 288 | 289 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_rune_t.h: 290 | 291 | /Library/Developer/CommandLineTools/usr/include/c++/v1/memory: 292 | 293 | /Library/Developer/CommandLineTools/usr/include/c++/v1/optional: 294 | 295 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_wchar_t.h: 296 | 297 | /Library/Developer/CommandLineTools/usr/include/c++/v1/iosfwd: 298 | 299 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_uint16_t.h: 300 | 301 | /Library/Developer/CommandLineTools/usr/lib/clang/12.0.0/include/stddef.h: 302 | 303 | /Library/Developer/CommandLineTools/usr/include/c++/v1/__debug: 304 | 305 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_u_int32_t.h: 306 | 307 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_clock_t.h: 308 | 309 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/pthread.h: 310 | 311 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_uintmax_t.h: 312 | 313 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_intmax_t.h: 314 | 315 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_pid_t.h: 316 | 317 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_uint64_t.h: 318 | 319 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_uint32_t.h: 320 | 321 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/machine/signal.h: 322 | 323 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_uint8_t.h: 324 | 325 | /Library/Developer/CommandLineTools/usr/include/c++/v1/stdint.h: 326 | 327 | /Library/Developer/CommandLineTools/usr/include/c++/v1/__tuple: 328 | 329 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/strings.h: 330 | 331 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/wctype.h: 332 | 333 | /Library/Developer/CommandLineTools/usr/lib/clang/12.0.0/include/limits.h: 334 | 335 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_u_int64_t.h: 336 | 337 | /Library/Developer/CommandLineTools/usr/include/c++/v1/cstddef: 338 | 339 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_u_int8_t.h: 340 | 341 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_wctrans_t.h: 342 | 343 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/string.h: 344 | 345 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/AvailabilityInternal.h: 346 | 347 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_int64_t.h: 348 | 349 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_ct_rune_t.h: 350 | 351 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_mbstate_t.h: 352 | 353 | /Library/Developer/CommandLineTools/usr/include/c++/v1/cstdint: 354 | 355 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_int8_t.h: 356 | 357 | /Library/Developer/CommandLineTools/usr/include/c++/v1/cstdio: 358 | 359 | /Library/Developer/CommandLineTools/usr/include/c++/v1/limits: 360 | 361 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/resource.h: 362 | 363 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/stdio.h: 364 | 365 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_null.h: 366 | 367 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_pthread/_pthread_types.h: 368 | 369 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/wchar.h: 370 | 371 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_size_t.h: 372 | 373 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/AvailabilityVersions.h: 374 | 375 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/machine/_types.h: 376 | 377 | /Library/Developer/CommandLineTools/usr/lib/clang/12.0.0/include/__stddef_max_align_t.h: 378 | 379 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/Availability.h: 380 | 381 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_u_int16_t.h: 382 | 383 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/stdint.h: 384 | 385 | /Library/Developer/CommandLineTools/usr/include/c++/v1/__undef_macros: 386 | 387 | ../lib.h: 388 | 389 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/_types.h: 390 | 391 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_uintptr_t.h: 392 | 393 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types.h: 394 | 395 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_posix_availability.h: 396 | 397 | /Library/Developer/CommandLineTools/usr/include/c++/v1/utility: 398 | 399 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/syslimits.h: 400 | 401 | /Library/Developer/CommandLineTools/usr/include/c++/v1/algorithm: 402 | 403 | /Library/Developer/CommandLineTools/usr/include/c++/v1/queue: 404 | 405 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/machine/types.h: 406 | 407 | /Library/Developer/CommandLineTools/usr/include/c++/v1/bit: 408 | 409 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/time.h: 410 | 411 | /Library/Developer/CommandLineTools/usr/include/c++/v1/type_traits: 412 | 413 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_rsize_t.h: 414 | 415 | /Library/Developer/CommandLineTools/usr/include/c++/v1/cstring: 416 | 417 | /Library/Developer/CommandLineTools/usr/include/c++/v1/__split_buffer: 418 | 419 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_wint_t.h: 420 | 421 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_symbol_aliasing.h: 422 | 423 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_timeval.h: 424 | 425 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_va_list.h: 426 | 427 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_ssize_t.h: 428 | 429 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types.h: 430 | 431 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_ctype.h: 432 | 433 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_endian.h: 434 | 435 | /Library/Developer/CommandLineTools/usr/include/c++/v1/deque: 436 | 437 | /Library/Developer/CommandLineTools/usr/lib/clang/12.0.0/include/stdint.h: 438 | 439 | /Library/Developer/CommandLineTools/usr/include/c++/v1/string: 440 | 441 | /Library/Developer/CommandLineTools/usr/include/c++/v1/__cxx_version: 442 | 443 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/machine/_mcontext.h: 444 | 445 | /Library/Developer/CommandLineTools/usr/include/c++/v1/initializer_list: 446 | 447 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_int16_t.h: 448 | 449 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_mode_t.h: 450 | 451 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_off_t.h: 452 | 453 | ../lib.cpp: 454 | 455 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/stdlib.h: 456 | 457 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/cdefs.h: 458 | 459 | /Library/Developer/CommandLineTools/usr/include/c++/v1/__nullptr: 460 | 461 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_intptr_t.h: 462 | 463 | /Library/Developer/CommandLineTools/usr/include/c++/v1/string.h: 464 | 465 | /Library/Developer/CommandLineTools/usr/include/c++/v1/cstdlib: 466 | 467 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/appleapiopts.h: 468 | 469 | /Library/Developer/CommandLineTools/usr/include/c++/v1/__config: 470 | -------------------------------------------------------------------------------- /sems/sem-09/build/CMakeFiles/lib.dir/compiler_depend.ts: -------------------------------------------------------------------------------- 1 | # CMAKE generated file: DO NOT EDIT! 2 | # Timestamp file for compiler generated dependencies management for lib. 3 | -------------------------------------------------------------------------------- /sems/sem-09/build/CMakeFiles/lib.dir/depend.make: -------------------------------------------------------------------------------- 1 | # Empty dependencies file for lib. 2 | # This may be replaced when dependencies are built. 3 | -------------------------------------------------------------------------------- /sems/sem-09/build/CMakeFiles/lib.dir/flags.make: -------------------------------------------------------------------------------- 1 | # CMAKE generated file: DO NOT EDIT! 2 | # Generated by "Unix Makefiles" Generator, CMake Version 3.21 3 | 4 | # compile CXX with /Library/Developer/CommandLineTools/usr/bin/c++ 5 | CXX_DEFINES = 6 | 7 | CXX_INCLUDES = -I/usr/local/include 8 | 9 | CXX_FLAGS = -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk -mmacosx-version-min=10.15 -std=gnu++17 10 | 11 | -------------------------------------------------------------------------------- /sems/sem-09/build/CMakeFiles/lib.dir/lib.cpp.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alexponomarev7/cplusplus-advance-sem/ebc23a5d406670a1fbe8079644d42f716342cfec/sems/sem-09/build/CMakeFiles/lib.dir/lib.cpp.o -------------------------------------------------------------------------------- /sems/sem-09/build/CMakeFiles/lib.dir/lib.cpp.o.d: -------------------------------------------------------------------------------- 1 | CMakeFiles/lib.dir/lib.cpp.o: \ 2 | /Users/aponomarev/cplusplus-advance-sem/sems/sem-09/lib.cpp \ 3 | /Users/aponomarev/cplusplus-advance-sem/sems/sem-09/lib.h \ 4 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/queue \ 5 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__config \ 6 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/pthread.h \ 7 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/deque \ 8 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__split_buffer \ 9 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/type_traits \ 10 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/cstddef \ 11 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__cxx_version \ 12 | /Library/Developer/CommandLineTools/usr/lib/clang/12.0.0/include/stddef.h \ 13 | /Library/Developer/CommandLineTools/usr/lib/clang/12.0.0/include/__stddef_max_align_t.h \ 14 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__nullptr \ 15 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/algorithm \ 16 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/initializer_list \ 17 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/cstring \ 18 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/string.h \ 19 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/string.h \ 20 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types.h \ 21 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types.h \ 22 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/cdefs.h \ 23 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_symbol_aliasing.h \ 24 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_posix_availability.h \ 25 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/machine/_types.h \ 26 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/_types.h \ 27 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_pthread/_pthread_types.h \ 28 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/Availability.h \ 29 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/AvailabilityVersions.h \ 30 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/AvailabilityInternal.h \ 31 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_size_t.h \ 32 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_null.h \ 33 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_rsize_t.h \ 34 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/machine/types.h \ 35 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/types.h \ 36 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_int8_t.h \ 37 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_int16_t.h \ 38 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_int32_t.h \ 39 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_int64_t.h \ 40 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_u_int8_t.h \ 41 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_u_int16_t.h \ 42 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_u_int32_t.h \ 43 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_u_int64_t.h \ 44 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_intptr_t.h \ 45 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_uintptr_t.h \ 46 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_errno_t.h \ 47 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_ssize_t.h \ 48 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/strings.h \ 49 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/utility \ 50 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__tuple \ 51 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/cstdint \ 52 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/stdint.h \ 53 | /Library/Developer/CommandLineTools/usr/lib/clang/12.0.0/include/stdint.h \ 54 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/stdint.h \ 55 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_uint8_t.h \ 56 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_uint16_t.h \ 57 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_uint32_t.h \ 58 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_uint64_t.h \ 59 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_intmax_t.h \ 60 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_uintmax_t.h \ 61 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__debug \ 62 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/iosfwd \ 63 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/wchar.h \ 64 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/wchar.h \ 65 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_mbstate_t.h \ 66 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_ct_rune_t.h \ 67 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_rune_t.h \ 68 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_wchar_t.h \ 69 | /Library/Developer/CommandLineTools/usr/lib/clang/12.0.0/include/stdarg.h \ 70 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/stdio.h \ 71 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/stdio.h \ 72 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_stdio.h \ 73 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_va_list.h \ 74 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/stdio.h \ 75 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_ctermid.h \ 76 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_off_t.h \ 77 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/time.h \ 78 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_clock_t.h \ 79 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_time_t.h \ 80 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_timespec.h \ 81 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_wctype.h \ 82 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/__wctype.h \ 83 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_wint_t.h \ 84 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_wctype_t.h \ 85 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/ctype.h \ 86 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/ctype.h \ 87 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_ctype.h \ 88 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/runetype.h \ 89 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/memory \ 90 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/typeinfo \ 91 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/exception \ 92 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/cstdlib \ 93 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/stdlib.h \ 94 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/stdlib.h \ 95 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/wait.h \ 96 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_pid_t.h \ 97 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_id_t.h \ 98 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/signal.h \ 99 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/appleapiopts.h \ 100 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/machine/signal.h \ 101 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/signal.h \ 102 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/machine/_mcontext.h \ 103 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/_mcontext.h \ 104 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/mach/machine/_structs.h \ 105 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/mach/i386/_structs.h \ 106 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_pthread/_pthread_attr_t.h \ 107 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_sigaltstack.h \ 108 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_ucontext.h \ 109 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_sigset_t.h \ 110 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_uid_t.h \ 111 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/resource.h \ 112 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_timeval.h \ 113 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/machine/endian.h \ 114 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/endian.h \ 115 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_endian.h \ 116 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/libkern/_OSByteOrder.h \ 117 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/libkern/i386/_OSByteOrder.h \ 118 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/alloca.h \ 119 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/malloc/_malloc.h \ 120 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_dev_t.h \ 121 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_mode_t.h \ 122 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/math.h \ 123 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/math.h \ 124 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/limits \ 125 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__undef_macros \ 126 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/new \ 127 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/iterator \ 128 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__functional_base \ 129 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/tuple \ 130 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/stdexcept \ 131 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/atomic \ 132 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/cassert \ 133 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/assert.h \ 134 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/functional \ 135 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/bit \ 136 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/vector \ 137 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__bit_reference \ 138 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/climits \ 139 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/limits.h \ 140 | /Library/Developer/CommandLineTools/usr/lib/clang/12.0.0/include/limits.h \ 141 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/limits.h \ 142 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/machine/limits.h \ 143 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/limits.h \ 144 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/_limits.h \ 145 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/syslimits.h \ 146 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/string \ 147 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/string_view \ 148 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__string \ 149 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/cstdio \ 150 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/cwchar \ 151 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/cwctype \ 152 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/cctype \ 153 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/wctype.h \ 154 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/wctype.h \ 155 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_wctrans_t.h \ 156 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/optional 157 | -------------------------------------------------------------------------------- /sems/sem-09/build/CMakeFiles/lib.dir/link.txt: -------------------------------------------------------------------------------- 1 | /Library/Developer/CommandLineTools/usr/bin/ar qc liblib.a CMakeFiles/lib.dir/lib.cpp.o 2 | /Library/Developer/CommandLineTools/usr/bin/ranlib liblib.a 3 | -------------------------------------------------------------------------------- /sems/sem-09/build/CMakeFiles/lib.dir/progress.make: -------------------------------------------------------------------------------- 1 | CMAKE_PROGRESS_1 = 1 2 | CMAKE_PROGRESS_2 = 2 3 | 4 | -------------------------------------------------------------------------------- /sems/sem-09/build/CMakeFiles/main.dir/DependInfo.cmake: -------------------------------------------------------------------------------- 1 | 2 | # Consider dependencies only in project. 3 | set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) 4 | 5 | # The set of languages for which implicit dependencies are needed: 6 | set(CMAKE_DEPENDS_LANGUAGES 7 | ) 8 | 9 | # The set of dependency files which are needed: 10 | set(CMAKE_DEPENDS_DEPENDENCY_FILES 11 | "/Users/aponomarev/cplusplus-advance-sem/sems/sem-09/main.cpp" "CMakeFiles/main.dir/main.cpp.o" "gcc" "CMakeFiles/main.dir/main.cpp.o.d" 12 | ) 13 | 14 | # Targets to which this target links. 15 | set(CMAKE_TARGET_LINKED_INFO_FILES 16 | "/Users/aponomarev/cplusplus-advance-sem/sems/sem-09/build/CMakeFiles/lib.dir/DependInfo.cmake" 17 | ) 18 | 19 | # Fortran module output directory. 20 | set(CMAKE_Fortran_TARGET_MODULE_DIR "") 21 | -------------------------------------------------------------------------------- /sems/sem-09/build/CMakeFiles/main.dir/build.make: -------------------------------------------------------------------------------- 1 | # CMAKE generated file: DO NOT EDIT! 2 | # Generated by "Unix Makefiles" Generator, CMake Version 3.21 3 | 4 | # Delete rule output on recipe failure. 5 | .DELETE_ON_ERROR: 6 | 7 | #============================================================================= 8 | # Special targets provided by cmake. 9 | 10 | # Disable implicit rules so canonical targets will work. 11 | .SUFFIXES: 12 | 13 | # Disable VCS-based implicit rules. 14 | % : %,v 15 | 16 | # Disable VCS-based implicit rules. 17 | % : RCS/% 18 | 19 | # Disable VCS-based implicit rules. 20 | % : RCS/%,v 21 | 22 | # Disable VCS-based implicit rules. 23 | % : SCCS/s.% 24 | 25 | # Disable VCS-based implicit rules. 26 | % : s.% 27 | 28 | .SUFFIXES: .hpux_make_needs_suffix_list 29 | 30 | # Command-line flag to silence nested $(MAKE). 31 | $(VERBOSE)MAKESILENT = -s 32 | 33 | #Suppress display of executed commands. 34 | $(VERBOSE).SILENT: 35 | 36 | # A target that is always out of date. 37 | cmake_force: 38 | .PHONY : cmake_force 39 | 40 | #============================================================================= 41 | # Set environment variables for the build. 42 | 43 | # The shell in which to execute make rules. 44 | SHELL = /bin/sh 45 | 46 | # The CMake executable. 47 | CMAKE_COMMAND = /usr/local/Cellar/cmake/3.21.3_1/bin/cmake 48 | 49 | # The command to remove a file. 50 | RM = /usr/local/Cellar/cmake/3.21.3_1/bin/cmake -E rm -f 51 | 52 | # Escaping for special characters. 53 | EQUALS = = 54 | 55 | # The top-level source directory on which CMake was run. 56 | CMAKE_SOURCE_DIR = /Users/aponomarev/cplusplus-advance-sem/sems/sem-09 57 | 58 | # The top-level build directory on which CMake was run. 59 | CMAKE_BINARY_DIR = /Users/aponomarev/cplusplus-advance-sem/sems/sem-09/build 60 | 61 | # Include any dependencies generated for this target. 62 | include CMakeFiles/main.dir/depend.make 63 | # Include any dependencies generated by the compiler for this target. 64 | include CMakeFiles/main.dir/compiler_depend.make 65 | 66 | # Include the progress variables for this target. 67 | include CMakeFiles/main.dir/progress.make 68 | 69 | # Include the compile flags for this target's objects. 70 | include CMakeFiles/main.dir/flags.make 71 | 72 | CMakeFiles/main.dir/main.cpp.o: CMakeFiles/main.dir/flags.make 73 | CMakeFiles/main.dir/main.cpp.o: ../main.cpp 74 | CMakeFiles/main.dir/main.cpp.o: CMakeFiles/main.dir/compiler_depend.ts 75 | @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/Users/aponomarev/cplusplus-advance-sem/sems/sem-09/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object CMakeFiles/main.dir/main.cpp.o" 76 | /Library/Developer/CommandLineTools/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/main.dir/main.cpp.o -MF CMakeFiles/main.dir/main.cpp.o.d -o CMakeFiles/main.dir/main.cpp.o -c /Users/aponomarev/cplusplus-advance-sem/sems/sem-09/main.cpp 77 | 78 | CMakeFiles/main.dir/main.cpp.i: cmake_force 79 | @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/main.dir/main.cpp.i" 80 | /Library/Developer/CommandLineTools/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Users/aponomarev/cplusplus-advance-sem/sems/sem-09/main.cpp > CMakeFiles/main.dir/main.cpp.i 81 | 82 | CMakeFiles/main.dir/main.cpp.s: cmake_force 83 | @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/main.dir/main.cpp.s" 84 | /Library/Developer/CommandLineTools/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Users/aponomarev/cplusplus-advance-sem/sems/sem-09/main.cpp -o CMakeFiles/main.dir/main.cpp.s 85 | 86 | # Object files for target main 87 | main_OBJECTS = \ 88 | "CMakeFiles/main.dir/main.cpp.o" 89 | 90 | # External object files for target main 91 | main_EXTERNAL_OBJECTS = 92 | 93 | main: CMakeFiles/main.dir/main.cpp.o 94 | main: CMakeFiles/main.dir/build.make 95 | main: liblib.a 96 | main: CMakeFiles/main.dir/link.txt 97 | @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/Users/aponomarev/cplusplus-advance-sem/sems/sem-09/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking CXX executable main" 98 | $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/main.dir/link.txt --verbose=$(VERBOSE) 99 | 100 | # Rule to build all files generated by this target. 101 | CMakeFiles/main.dir/build: main 102 | .PHONY : CMakeFiles/main.dir/build 103 | 104 | CMakeFiles/main.dir/clean: 105 | $(CMAKE_COMMAND) -P CMakeFiles/main.dir/cmake_clean.cmake 106 | .PHONY : CMakeFiles/main.dir/clean 107 | 108 | CMakeFiles/main.dir/depend: 109 | cd /Users/aponomarev/cplusplus-advance-sem/sems/sem-09/build && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/aponomarev/cplusplus-advance-sem/sems/sem-09 /Users/aponomarev/cplusplus-advance-sem/sems/sem-09 /Users/aponomarev/cplusplus-advance-sem/sems/sem-09/build /Users/aponomarev/cplusplus-advance-sem/sems/sem-09/build /Users/aponomarev/cplusplus-advance-sem/sems/sem-09/build/CMakeFiles/main.dir/DependInfo.cmake --color=$(COLOR) 110 | .PHONY : CMakeFiles/main.dir/depend 111 | 112 | -------------------------------------------------------------------------------- /sems/sem-09/build/CMakeFiles/main.dir/cmake_clean.cmake: -------------------------------------------------------------------------------- 1 | file(REMOVE_RECURSE 2 | "CMakeFiles/main.dir/main.cpp.o" 3 | "CMakeFiles/main.dir/main.cpp.o.d" 4 | "main" 5 | "main.pdb" 6 | ) 7 | 8 | # Per-language clean rules from dependency scanning. 9 | foreach(lang CXX) 10 | include(CMakeFiles/main.dir/cmake_clean_${lang}.cmake OPTIONAL) 11 | endforeach() 12 | -------------------------------------------------------------------------------- /sems/sem-09/build/CMakeFiles/main.dir/compiler_depend.ts: -------------------------------------------------------------------------------- 1 | # CMAKE generated file: DO NOT EDIT! 2 | # Timestamp file for compiler generated dependencies management for main. 3 | -------------------------------------------------------------------------------- /sems/sem-09/build/CMakeFiles/main.dir/depend.make: -------------------------------------------------------------------------------- 1 | # Empty dependencies file for main. 2 | # This may be replaced when dependencies are built. 3 | -------------------------------------------------------------------------------- /sems/sem-09/build/CMakeFiles/main.dir/flags.make: -------------------------------------------------------------------------------- 1 | # CMAKE generated file: DO NOT EDIT! 2 | # Generated by "Unix Makefiles" Generator, CMake Version 3.21 3 | 4 | # compile CXX with /Library/Developer/CommandLineTools/usr/bin/c++ 5 | CXX_DEFINES = 6 | 7 | CXX_INCLUDES = -I/usr/local/include 8 | 9 | CXX_FLAGS = -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk -mmacosx-version-min=10.15 -std=gnu++17 10 | 11 | -------------------------------------------------------------------------------- /sems/sem-09/build/CMakeFiles/main.dir/link.txt: -------------------------------------------------------------------------------- 1 | /Library/Developer/CommandLineTools/usr/bin/c++ -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk -mmacosx-version-min=10.15 -Wl,-search_paths_first -Wl,-headerpad_max_install_names CMakeFiles/main.dir/main.cpp.o -o main liblib.a 2 | -------------------------------------------------------------------------------- /sems/sem-09/build/CMakeFiles/main.dir/main.cpp.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alexponomarev7/cplusplus-advance-sem/ebc23a5d406670a1fbe8079644d42f716342cfec/sems/sem-09/build/CMakeFiles/main.dir/main.cpp.o -------------------------------------------------------------------------------- /sems/sem-09/build/CMakeFiles/main.dir/main.cpp.o.d: -------------------------------------------------------------------------------- 1 | CMakeFiles/main.dir/main.cpp.o: \ 2 | /Users/aponomarev/cplusplus-advance-sem/sems/sem-09/main.cpp \ 3 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/iostream \ 4 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__config \ 5 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/pthread.h \ 6 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/ios \ 7 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/iosfwd \ 8 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/wchar.h \ 9 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/wchar.h \ 10 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types.h \ 11 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types.h \ 12 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/cdefs.h \ 13 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_symbol_aliasing.h \ 14 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_posix_availability.h \ 15 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/machine/_types.h \ 16 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/_types.h \ 17 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_pthread/_pthread_types.h \ 18 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/Availability.h \ 19 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/AvailabilityVersions.h \ 20 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/AvailabilityInternal.h \ 21 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_null.h \ 22 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_size_t.h \ 23 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_mbstate_t.h \ 24 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/machine/types.h \ 25 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/types.h \ 26 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_int8_t.h \ 27 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_int16_t.h \ 28 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_int32_t.h \ 29 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_int64_t.h \ 30 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_u_int8_t.h \ 31 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_u_int16_t.h \ 32 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_u_int32_t.h \ 33 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_u_int64_t.h \ 34 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_intptr_t.h \ 35 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_uintptr_t.h \ 36 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_ct_rune_t.h \ 37 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_rune_t.h \ 38 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_wchar_t.h \ 39 | /Library/Developer/CommandLineTools/usr/lib/clang/12.0.0/include/stdarg.h \ 40 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/stdio.h \ 41 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/stdio.h \ 42 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_stdio.h \ 43 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_va_list.h \ 44 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/stdio.h \ 45 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_ctermid.h \ 46 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_off_t.h \ 47 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_ssize_t.h \ 48 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/time.h \ 49 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_clock_t.h \ 50 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_time_t.h \ 51 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_timespec.h \ 52 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_wctype.h \ 53 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/__wctype.h \ 54 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_wint_t.h \ 55 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_wctype_t.h \ 56 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/ctype.h \ 57 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/ctype.h \ 58 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_ctype.h \ 59 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/runetype.h \ 60 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__locale \ 61 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/string \ 62 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/string_view \ 63 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__string \ 64 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/algorithm \ 65 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/initializer_list \ 66 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/cstddef \ 67 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__cxx_version \ 68 | /Library/Developer/CommandLineTools/usr/lib/clang/12.0.0/include/stddef.h \ 69 | /Library/Developer/CommandLineTools/usr/lib/clang/12.0.0/include/__stddef_max_align_t.h \ 70 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__nullptr \ 71 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/type_traits \ 72 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/cstring \ 73 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/string.h \ 74 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/string.h \ 75 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_rsize_t.h \ 76 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_errno_t.h \ 77 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/strings.h \ 78 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/utility \ 79 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__tuple \ 80 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/cstdint \ 81 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/stdint.h \ 82 | /Library/Developer/CommandLineTools/usr/lib/clang/12.0.0/include/stdint.h \ 83 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/stdint.h \ 84 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_uint8_t.h \ 85 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_uint16_t.h \ 86 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_uint32_t.h \ 87 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_uint64_t.h \ 88 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_intmax_t.h \ 89 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_uintmax_t.h \ 90 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__debug \ 91 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/memory \ 92 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/typeinfo \ 93 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/exception \ 94 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/cstdlib \ 95 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/stdlib.h \ 96 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/stdlib.h \ 97 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/wait.h \ 98 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_pid_t.h \ 99 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_id_t.h \ 100 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/signal.h \ 101 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/appleapiopts.h \ 102 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/machine/signal.h \ 103 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/signal.h \ 104 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/machine/_mcontext.h \ 105 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/_mcontext.h \ 106 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/mach/machine/_structs.h \ 107 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/mach/i386/_structs.h \ 108 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_pthread/_pthread_attr_t.h \ 109 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_sigaltstack.h \ 110 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_ucontext.h \ 111 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_sigset_t.h \ 112 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_uid_t.h \ 113 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/resource.h \ 114 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_timeval.h \ 115 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/machine/endian.h \ 116 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/endian.h \ 117 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_endian.h \ 118 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/libkern/_OSByteOrder.h \ 119 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/libkern/i386/_OSByteOrder.h \ 120 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/alloca.h \ 121 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/malloc/_malloc.h \ 122 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_dev_t.h \ 123 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_mode_t.h \ 124 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/math.h \ 125 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/math.h \ 126 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/limits \ 127 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__undef_macros \ 128 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/new \ 129 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/iterator \ 130 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__functional_base \ 131 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/tuple \ 132 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/stdexcept \ 133 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/atomic \ 134 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/cassert \ 135 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/assert.h \ 136 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/functional \ 137 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/bit \ 138 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/cstdio \ 139 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/cwchar \ 140 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/cwctype \ 141 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/cctype \ 142 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/wctype.h \ 143 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/wctype.h \ 144 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_wctrans_t.h \ 145 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/mutex \ 146 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__mutex_base \ 147 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/chrono \ 148 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/ctime \ 149 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/ratio \ 150 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/climits \ 151 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/limits.h \ 152 | /Library/Developer/CommandLineTools/usr/lib/clang/12.0.0/include/limits.h \ 153 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/limits.h \ 154 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/machine/limits.h \ 155 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/limits.h \ 156 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/_limits.h \ 157 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/syslimits.h \ 158 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/system_error \ 159 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__errc \ 160 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/cerrno \ 161 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/errno.h \ 162 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/errno.h \ 163 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/errno.h \ 164 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__threading_support \ 165 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/pthread/sched.h \ 166 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/pthread/pthread_impl.h \ 167 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_pthread/_pthread_cond_t.h \ 168 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_pthread/_pthread_condattr_t.h \ 169 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_pthread/_pthread_key_t.h \ 170 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_pthread/_pthread_mutex_t.h \ 171 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_pthread/_pthread_mutexattr_t.h \ 172 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_pthread/_pthread_once_t.h \ 173 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_pthread/_pthread_rwlock_t.h \ 174 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_pthread/_pthread_rwlockattr_t.h \ 175 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_pthread/_pthread_t.h \ 176 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/pthread/qos.h \ 177 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/qos.h \ 178 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_mach_port_t.h \ 179 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sched.h \ 180 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/locale.h \ 181 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/locale.h \ 182 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_locale.h \ 183 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/xlocale.h \ 184 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_xlocale.h \ 185 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/xlocale/_ctype.h \ 186 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/xlocale/__wctype.h \ 187 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/xlocale/_stdio.h \ 188 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/xlocale/_stdlib.h \ 189 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/xlocale/_string.h \ 190 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/xlocale/_time.h \ 191 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/xlocale/_wchar.h \ 192 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/stddef.h \ 193 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/xlocale/_wctype.h \ 194 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/streambuf \ 195 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/istream \ 196 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/ostream \ 197 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/locale \ 198 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/nl_types.h \ 199 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/types.h \ 200 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_u_char.h \ 201 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_u_short.h \ 202 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_u_int.h \ 203 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_caddr_t.h \ 204 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_blkcnt_t.h \ 205 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_blksize_t.h \ 206 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_gid_t.h \ 207 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_in_addr_t.h \ 208 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_in_port_t.h \ 209 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_ino_t.h \ 210 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_ino64_t.h \ 211 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_key_t.h \ 212 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_nlink_t.h \ 213 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_useconds_t.h \ 214 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_suseconds_t.h \ 215 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_fd_def.h \ 216 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_fd_setsize.h \ 217 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_fd_set.h \ 218 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_fd_clr.h \ 219 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_fd_zero.h \ 220 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_fd_isset.h \ 221 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_fd_copy.h \ 222 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_fsblkcnt_t.h \ 223 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_fsfilcnt_t.h \ 224 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_nl_item.h \ 225 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__bsd_locale_defaults.h \ 226 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/bitset \ 227 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__bit_reference \ 228 | /Users/aponomarev/cplusplus-advance-sem/sems/sem-09/lib.h \ 229 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/queue \ 230 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/deque \ 231 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__split_buffer \ 232 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/vector \ 233 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/optional 234 | -------------------------------------------------------------------------------- /sems/sem-09/build/CMakeFiles/main.dir/progress.make: -------------------------------------------------------------------------------- 1 | CMAKE_PROGRESS_1 = 3 2 | CMAKE_PROGRESS_2 = 4 3 | 4 | -------------------------------------------------------------------------------- /sems/sem-09/build/CMakeFiles/main_test.dir/DependInfo.cmake: -------------------------------------------------------------------------------- 1 | 2 | # Consider dependencies only in project. 3 | set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) 4 | 5 | # The set of languages for which implicit dependencies are needed: 6 | set(CMAKE_DEPENDS_LANGUAGES 7 | ) 8 | 9 | # The set of dependency files which are needed: 10 | set(CMAKE_DEPENDS_DEPENDENCY_FILES 11 | "/Users/aponomarev/cplusplus-advance-sem/sems/sem-09/tests.cpp" "CMakeFiles/main_test.dir/tests.cpp.o" "gcc" "CMakeFiles/main_test.dir/tests.cpp.o.d" 12 | ) 13 | 14 | # Targets to which this target links. 15 | set(CMAKE_TARGET_LINKED_INFO_FILES 16 | "/Users/aponomarev/cplusplus-advance-sem/sems/sem-09/build/CMakeFiles/lib.dir/DependInfo.cmake" 17 | ) 18 | 19 | # Fortran module output directory. 20 | set(CMAKE_Fortran_TARGET_MODULE_DIR "") 21 | -------------------------------------------------------------------------------- /sems/sem-09/build/CMakeFiles/main_test.dir/build.make: -------------------------------------------------------------------------------- 1 | # CMAKE generated file: DO NOT EDIT! 2 | # Generated by "Unix Makefiles" Generator, CMake Version 3.21 3 | 4 | # Delete rule output on recipe failure. 5 | .DELETE_ON_ERROR: 6 | 7 | #============================================================================= 8 | # Special targets provided by cmake. 9 | 10 | # Disable implicit rules so canonical targets will work. 11 | .SUFFIXES: 12 | 13 | # Disable VCS-based implicit rules. 14 | % : %,v 15 | 16 | # Disable VCS-based implicit rules. 17 | % : RCS/% 18 | 19 | # Disable VCS-based implicit rules. 20 | % : RCS/%,v 21 | 22 | # Disable VCS-based implicit rules. 23 | % : SCCS/s.% 24 | 25 | # Disable VCS-based implicit rules. 26 | % : s.% 27 | 28 | .SUFFIXES: .hpux_make_needs_suffix_list 29 | 30 | # Command-line flag to silence nested $(MAKE). 31 | $(VERBOSE)MAKESILENT = -s 32 | 33 | #Suppress display of executed commands. 34 | $(VERBOSE).SILENT: 35 | 36 | # A target that is always out of date. 37 | cmake_force: 38 | .PHONY : cmake_force 39 | 40 | #============================================================================= 41 | # Set environment variables for the build. 42 | 43 | # The shell in which to execute make rules. 44 | SHELL = /bin/sh 45 | 46 | # The CMake executable. 47 | CMAKE_COMMAND = /usr/local/Cellar/cmake/3.21.3_1/bin/cmake 48 | 49 | # The command to remove a file. 50 | RM = /usr/local/Cellar/cmake/3.21.3_1/bin/cmake -E rm -f 51 | 52 | # Escaping for special characters. 53 | EQUALS = = 54 | 55 | # The top-level source directory on which CMake was run. 56 | CMAKE_SOURCE_DIR = /Users/aponomarev/cplusplus-advance-sem/sems/sem-09 57 | 58 | # The top-level build directory on which CMake was run. 59 | CMAKE_BINARY_DIR = /Users/aponomarev/cplusplus-advance-sem/sems/sem-09/build 60 | 61 | # Include any dependencies generated for this target. 62 | include CMakeFiles/main_test.dir/depend.make 63 | # Include any dependencies generated by the compiler for this target. 64 | include CMakeFiles/main_test.dir/compiler_depend.make 65 | 66 | # Include the progress variables for this target. 67 | include CMakeFiles/main_test.dir/progress.make 68 | 69 | # Include the compile flags for this target's objects. 70 | include CMakeFiles/main_test.dir/flags.make 71 | 72 | CMakeFiles/main_test.dir/tests.cpp.o: CMakeFiles/main_test.dir/flags.make 73 | CMakeFiles/main_test.dir/tests.cpp.o: ../tests.cpp 74 | CMakeFiles/main_test.dir/tests.cpp.o: CMakeFiles/main_test.dir/compiler_depend.ts 75 | @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/Users/aponomarev/cplusplus-advance-sem/sems/sem-09/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object CMakeFiles/main_test.dir/tests.cpp.o" 76 | /Library/Developer/CommandLineTools/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/main_test.dir/tests.cpp.o -MF CMakeFiles/main_test.dir/tests.cpp.o.d -o CMakeFiles/main_test.dir/tests.cpp.o -c /Users/aponomarev/cplusplus-advance-sem/sems/sem-09/tests.cpp 77 | 78 | CMakeFiles/main_test.dir/tests.cpp.i: cmake_force 79 | @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/main_test.dir/tests.cpp.i" 80 | /Library/Developer/CommandLineTools/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Users/aponomarev/cplusplus-advance-sem/sems/sem-09/tests.cpp > CMakeFiles/main_test.dir/tests.cpp.i 81 | 82 | CMakeFiles/main_test.dir/tests.cpp.s: cmake_force 83 | @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/main_test.dir/tests.cpp.s" 84 | /Library/Developer/CommandLineTools/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Users/aponomarev/cplusplus-advance-sem/sems/sem-09/tests.cpp -o CMakeFiles/main_test.dir/tests.cpp.s 85 | 86 | # Object files for target main_test 87 | main_test_OBJECTS = \ 88 | "CMakeFiles/main_test.dir/tests.cpp.o" 89 | 90 | # External object files for target main_test 91 | main_test_EXTERNAL_OBJECTS = 92 | 93 | main_test: CMakeFiles/main_test.dir/tests.cpp.o 94 | main_test: CMakeFiles/main_test.dir/build.make 95 | main_test: liblib.a 96 | main_test: /usr/local/lib/libgtest.a 97 | main_test: /usr/local/lib/libgtest_main.a 98 | main_test: /usr/local/lib/libgmock.a 99 | main_test: /usr/local/lib/libgmock_main.a 100 | main_test: /usr/local/lib/libgmock.a 101 | main_test: /usr/local/lib/libgtest.a 102 | main_test: CMakeFiles/main_test.dir/link.txt 103 | @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/Users/aponomarev/cplusplus-advance-sem/sems/sem-09/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking CXX executable main_test" 104 | $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/main_test.dir/link.txt --verbose=$(VERBOSE) 105 | /usr/local/Cellar/cmake/3.21.3_1/bin/cmake -D TEST_TARGET=main_test -D TEST_EXECUTABLE=/Users/aponomarev/cplusplus-advance-sem/sems/sem-09/build/main_test -D TEST_EXECUTOR= -D TEST_WORKING_DIR=/Users/aponomarev/cplusplus-advance-sem/sems/sem-09/build -D TEST_EXTRA_ARGS= -D TEST_PROPERTIES= -D TEST_PREFIX= -D TEST_SUFFIX= -D NO_PRETTY_TYPES=FALSE -D NO_PRETTY_VALUES=FALSE -D TEST_LIST=main_test_TESTS -D CTEST_FILE=/Users/aponomarev/cplusplus-advance-sem/sems/sem-09/build/main_test[1]_tests.cmake -D TEST_DISCOVERY_TIMEOUT=5 -D TEST_XML_OUTPUT_DIR= -P /usr/local/Cellar/cmake/3.21.3_1/share/cmake/Modules/GoogleTestAddTests.cmake 106 | 107 | # Rule to build all files generated by this target. 108 | CMakeFiles/main_test.dir/build: main_test 109 | .PHONY : CMakeFiles/main_test.dir/build 110 | 111 | CMakeFiles/main_test.dir/clean: 112 | $(CMAKE_COMMAND) -P CMakeFiles/main_test.dir/cmake_clean.cmake 113 | .PHONY : CMakeFiles/main_test.dir/clean 114 | 115 | CMakeFiles/main_test.dir/depend: 116 | cd /Users/aponomarev/cplusplus-advance-sem/sems/sem-09/build && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/aponomarev/cplusplus-advance-sem/sems/sem-09 /Users/aponomarev/cplusplus-advance-sem/sems/sem-09 /Users/aponomarev/cplusplus-advance-sem/sems/sem-09/build /Users/aponomarev/cplusplus-advance-sem/sems/sem-09/build /Users/aponomarev/cplusplus-advance-sem/sems/sem-09/build/CMakeFiles/main_test.dir/DependInfo.cmake --color=$(COLOR) 117 | .PHONY : CMakeFiles/main_test.dir/depend 118 | 119 | -------------------------------------------------------------------------------- /sems/sem-09/build/CMakeFiles/main_test.dir/cmake_clean.cmake: -------------------------------------------------------------------------------- 1 | file(REMOVE_RECURSE 2 | "CMakeFiles/main_test.dir/tests.cpp.o" 3 | "CMakeFiles/main_test.dir/tests.cpp.o.d" 4 | "main_test" 5 | "main_test.pdb" 6 | "main_test[1]_tests.cmake" 7 | ) 8 | 9 | # Per-language clean rules from dependency scanning. 10 | foreach(lang CXX) 11 | include(CMakeFiles/main_test.dir/cmake_clean_${lang}.cmake OPTIONAL) 12 | endforeach() 13 | -------------------------------------------------------------------------------- /sems/sem-09/build/CMakeFiles/main_test.dir/compiler_depend.ts: -------------------------------------------------------------------------------- 1 | # CMAKE generated file: DO NOT EDIT! 2 | # Timestamp file for compiler generated dependencies management for main_test. 3 | -------------------------------------------------------------------------------- /sems/sem-09/build/CMakeFiles/main_test.dir/depend.make: -------------------------------------------------------------------------------- 1 | # Empty dependencies file for main_test. 2 | # This may be replaced when dependencies are built. 3 | -------------------------------------------------------------------------------- /sems/sem-09/build/CMakeFiles/main_test.dir/flags.make: -------------------------------------------------------------------------------- 1 | # CMAKE generated file: DO NOT EDIT! 2 | # Generated by "Unix Makefiles" Generator, CMake Version 3.21 3 | 4 | # compile CXX with /Library/Developer/CommandLineTools/usr/bin/c++ 5 | CXX_DEFINES = 6 | 7 | CXX_INCLUDES = -isystem /usr/local/include 8 | 9 | CXX_FLAGS = -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk -mmacosx-version-min=10.15 -std=gnu++17 10 | 11 | -------------------------------------------------------------------------------- /sems/sem-09/build/CMakeFiles/main_test.dir/link.txt: -------------------------------------------------------------------------------- 1 | /Library/Developer/CommandLineTools/usr/bin/c++ -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk -mmacosx-version-min=10.15 -Wl,-search_paths_first -Wl,-headerpad_max_install_names CMakeFiles/main_test.dir/tests.cpp.o -o main_test liblib.a /usr/local/lib/libgtest.a /usr/local/lib/libgtest_main.a /usr/local/lib/libgmock.a /usr/local/lib/libgmock_main.a /usr/local/lib/libgmock.a /usr/local/lib/libgtest.a 2 | -------------------------------------------------------------------------------- /sems/sem-09/build/CMakeFiles/main_test.dir/progress.make: -------------------------------------------------------------------------------- 1 | CMAKE_PROGRESS_1 = 5 2 | CMAKE_PROGRESS_2 = 6 3 | 4 | -------------------------------------------------------------------------------- /sems/sem-09/build/CMakeFiles/main_test.dir/tests.cpp.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alexponomarev7/cplusplus-advance-sem/ebc23a5d406670a1fbe8079644d42f716342cfec/sems/sem-09/build/CMakeFiles/main_test.dir/tests.cpp.o -------------------------------------------------------------------------------- /sems/sem-09/build/CMakeFiles/main_test.dir/tests.cpp.o.d: -------------------------------------------------------------------------------- 1 | CMakeFiles/main_test.dir/tests.cpp.o: \ 2 | /Users/aponomarev/cplusplus-advance-sem/sems/sem-09/tests.cpp \ 3 | /Users/aponomarev/cplusplus-advance-sem/sems/sem-09/lib.h \ 4 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/queue \ 5 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__config \ 6 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/pthread.h \ 7 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/deque \ 8 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__split_buffer \ 9 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/type_traits \ 10 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/cstddef \ 11 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__cxx_version \ 12 | /Library/Developer/CommandLineTools/usr/lib/clang/12.0.0/include/stddef.h \ 13 | /Library/Developer/CommandLineTools/usr/lib/clang/12.0.0/include/__stddef_max_align_t.h \ 14 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__nullptr \ 15 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/algorithm \ 16 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/initializer_list \ 17 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/cstring \ 18 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/string.h \ 19 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/string.h \ 20 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types.h \ 21 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types.h \ 22 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/cdefs.h \ 23 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_symbol_aliasing.h \ 24 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_posix_availability.h \ 25 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/machine/_types.h \ 26 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/_types.h \ 27 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_pthread/_pthread_types.h \ 28 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/Availability.h \ 29 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/AvailabilityVersions.h \ 30 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/AvailabilityInternal.h \ 31 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_size_t.h \ 32 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_null.h \ 33 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_rsize_t.h \ 34 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/machine/types.h \ 35 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/types.h \ 36 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_int8_t.h \ 37 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_int16_t.h \ 38 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_int32_t.h \ 39 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_int64_t.h \ 40 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_u_int8_t.h \ 41 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_u_int16_t.h \ 42 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_u_int32_t.h \ 43 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_u_int64_t.h \ 44 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_intptr_t.h \ 45 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_uintptr_t.h \ 46 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_errno_t.h \ 47 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_ssize_t.h \ 48 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/strings.h \ 49 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/utility \ 50 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__tuple \ 51 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/cstdint \ 52 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/stdint.h \ 53 | /Library/Developer/CommandLineTools/usr/lib/clang/12.0.0/include/stdint.h \ 54 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/stdint.h \ 55 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_uint8_t.h \ 56 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_uint16_t.h \ 57 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_uint32_t.h \ 58 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_uint64_t.h \ 59 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_intmax_t.h \ 60 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_uintmax_t.h \ 61 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__debug \ 62 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/iosfwd \ 63 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/wchar.h \ 64 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/wchar.h \ 65 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_mbstate_t.h \ 66 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_ct_rune_t.h \ 67 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_rune_t.h \ 68 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_wchar_t.h \ 69 | /Library/Developer/CommandLineTools/usr/lib/clang/12.0.0/include/stdarg.h \ 70 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/stdio.h \ 71 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/stdio.h \ 72 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_stdio.h \ 73 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_va_list.h \ 74 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/stdio.h \ 75 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_ctermid.h \ 76 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_off_t.h \ 77 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/time.h \ 78 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_clock_t.h \ 79 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_time_t.h \ 80 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_timespec.h \ 81 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_wctype.h \ 82 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/__wctype.h \ 83 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_wint_t.h \ 84 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_wctype_t.h \ 85 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/ctype.h \ 86 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/ctype.h \ 87 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_ctype.h \ 88 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/runetype.h \ 89 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/memory \ 90 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/typeinfo \ 91 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/exception \ 92 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/cstdlib \ 93 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/stdlib.h \ 94 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/stdlib.h \ 95 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/wait.h \ 96 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_pid_t.h \ 97 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_id_t.h \ 98 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/signal.h \ 99 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/appleapiopts.h \ 100 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/machine/signal.h \ 101 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/signal.h \ 102 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/machine/_mcontext.h \ 103 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/_mcontext.h \ 104 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/mach/machine/_structs.h \ 105 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/mach/i386/_structs.h \ 106 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_pthread/_pthread_attr_t.h \ 107 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_sigaltstack.h \ 108 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_ucontext.h \ 109 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_sigset_t.h \ 110 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_uid_t.h \ 111 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/resource.h \ 112 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_timeval.h \ 113 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/machine/endian.h \ 114 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/endian.h \ 115 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_endian.h \ 116 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/libkern/_OSByteOrder.h \ 117 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/libkern/i386/_OSByteOrder.h \ 118 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/alloca.h \ 119 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/malloc/_malloc.h \ 120 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_dev_t.h \ 121 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_mode_t.h \ 122 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/math.h \ 123 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/math.h \ 124 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/limits \ 125 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__undef_macros \ 126 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/new \ 127 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/iterator \ 128 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__functional_base \ 129 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/tuple \ 130 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/stdexcept \ 131 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/atomic \ 132 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/cassert \ 133 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/assert.h \ 134 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/functional \ 135 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/bit \ 136 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/vector \ 137 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__bit_reference \ 138 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/climits \ 139 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/limits.h \ 140 | /Library/Developer/CommandLineTools/usr/lib/clang/12.0.0/include/limits.h \ 141 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/limits.h \ 142 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/machine/limits.h \ 143 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/limits.h \ 144 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/i386/_limits.h \ 145 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/syslimits.h \ 146 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/string \ 147 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/string_view \ 148 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__string \ 149 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/cstdio \ 150 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/cwchar \ 151 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/cwctype \ 152 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/cctype \ 153 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/wctype.h \ 154 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/wctype.h \ 155 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_wctrans_t.h \ 156 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/optional \ 157 | /usr/local/include/gtest/gtest.h \ 158 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/ostream \ 159 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/ios \ 160 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__locale \ 161 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/mutex \ 162 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__mutex_base \ 163 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/chrono \ 164 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/ctime \ 165 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/ratio \ 166 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/system_error \ 167 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__errc \ 168 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/cerrno \ 169 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/errno.h \ 170 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/errno.h \ 171 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/errno.h \ 172 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__threading_support \ 173 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/pthread/sched.h \ 174 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/pthread/pthread_impl.h \ 175 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_pthread/_pthread_cond_t.h \ 176 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_pthread/_pthread_condattr_t.h \ 177 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_pthread/_pthread_key_t.h \ 178 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_pthread/_pthread_mutex_t.h \ 179 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_pthread/_pthread_mutexattr_t.h \ 180 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_pthread/_pthread_once_t.h \ 181 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_pthread/_pthread_rwlock_t.h \ 182 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_pthread/_pthread_rwlockattr_t.h \ 183 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_pthread/_pthread_t.h \ 184 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/pthread/qos.h \ 185 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/qos.h \ 186 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_mach_port_t.h \ 187 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sched.h \ 188 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/locale.h \ 189 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/locale.h \ 190 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_locale.h \ 191 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/xlocale.h \ 192 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_xlocale.h \ 193 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/xlocale/_ctype.h \ 194 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/xlocale/__wctype.h \ 195 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/xlocale/_stdio.h \ 196 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/xlocale/_stdlib.h \ 197 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/xlocale/_string.h \ 198 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/xlocale/_time.h \ 199 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/xlocale/_wchar.h \ 200 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/stddef.h \ 201 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/xlocale/_wctype.h \ 202 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/streambuf \ 203 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/locale \ 204 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/nl_types.h \ 205 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/types.h \ 206 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_u_char.h \ 207 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_u_short.h \ 208 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_u_int.h \ 209 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_caddr_t.h \ 210 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_blkcnt_t.h \ 211 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_blksize_t.h \ 212 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_gid_t.h \ 213 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_in_addr_t.h \ 214 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_in_port_t.h \ 215 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_ino_t.h \ 216 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_ino64_t.h \ 217 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_key_t.h \ 218 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_nlink_t.h \ 219 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_useconds_t.h \ 220 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_suseconds_t.h \ 221 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_fd_def.h \ 222 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_fd_setsize.h \ 223 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_fd_set.h \ 224 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_fd_clr.h \ 225 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_fd_zero.h \ 226 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_fd_isset.h \ 227 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_fd_copy.h \ 228 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_fsblkcnt_t.h \ 229 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_fsfilcnt_t.h \ 230 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_types/_nl_item.h \ 231 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__bsd_locale_defaults.h \ 232 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/bitset \ 233 | /usr/local/include/gtest/internal/gtest-internal.h \ 234 | /usr/local/include/gtest/internal/gtest-port.h \ 235 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/iostream \ 236 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/istream \ 237 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/stat.h \ 238 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_s_ifmt.h \ 239 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_filesec_t.h \ 240 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/AvailabilityMacros.h \ 241 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/TargetConditionals.h \ 242 | /usr/local/include/gtest/internal/custom/gtest-port.h \ 243 | /usr/local/include/gtest/internal/gtest-port-arch.h \ 244 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/unistd.h \ 245 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/unistd.h \ 246 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_posix_vdisable.h \ 247 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_seek_set.h \ 248 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/select.h \ 249 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_select.h \ 250 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/sys/_types/_uuid_t.h \ 251 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/gethostuuid.h \ 252 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/regex.h \ 253 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/_regex.h \ 254 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/xlocale/_regex.h \ 255 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/condition_variable \ 256 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/any \ 257 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/experimental/__config \ 258 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/variant \ 259 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/array \ 260 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/float.h \ 261 | /Library/Developer/CommandLineTools/usr/lib/clang/12.0.0/include/float.h \ 262 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/float.h \ 263 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/iomanip \ 264 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/map \ 265 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__tree \ 266 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/__node_handle \ 267 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/set \ 268 | /usr/local/include/gtest/gtest-message.h \ 269 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/sstream \ 270 | /usr/local/include/gtest/internal/gtest-filepath.h \ 271 | /usr/local/include/gtest/internal/gtest-string.h \ 272 | /usr/local/include/gtest/internal/gtest-type-util.h \ 273 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/cxxabi.h \ 274 | /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk/usr/include/__cxxabi_config.h \ 275 | /usr/local/include/gtest/gtest-death-test.h \ 276 | /usr/local/include/gtest/internal/gtest-death-test-internal.h \ 277 | /usr/local/include/gtest/gtest-matchers.h \ 278 | /usr/local/include/gtest/gtest-printers.h \ 279 | /usr/local/include/gtest/internal/custom/gtest-printers.h \ 280 | /usr/local/include/gtest/gtest-param-test.h \ 281 | /usr/local/include/gtest/internal/gtest-param-util.h \ 282 | /usr/local/include/gtest/gtest-test-part.h \ 283 | /usr/local/include/gtest/gtest_prod.h \ 284 | /usr/local/include/gtest/gtest-typed-test.h \ 285 | /usr/local/include/gtest/gtest_pred_impl.h \ 286 | /usr/local/include/gmock/gmock.h \ 287 | /usr/local/include/gmock/gmock-actions.h \ 288 | /usr/local/include/gmock/internal/gmock-internal-utils.h \ 289 | /usr/local/include/gmock/internal/gmock-port.h \ 290 | /usr/local/include/gmock/internal/custom/gmock-port.h \ 291 | /usr/local/include/gmock/internal/gmock-pp.h \ 292 | /usr/local/include/gmock/gmock-cardinalities.h \ 293 | /usr/local/include/gmock/gmock-function-mocker.h \ 294 | /usr/local/include/gmock/gmock-spec-builders.h \ 295 | /usr/local/include/gmock/gmock-matchers.h \ 296 | /Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/cmath \ 297 | /usr/local/include/gmock/internal/custom/gmock-matchers.h \ 298 | /usr/local/include/gmock/gmock-more-actions.h \ 299 | /usr/local/include/gmock/internal/custom/gmock-generated-actions.h \ 300 | /usr/local/include/gmock/gmock-more-matchers.h \ 301 | /usr/local/include/gmock/gmock-nice-strict.h 302 | -------------------------------------------------------------------------------- /sems/sem-09/build/CMakeFiles/progress.marks: -------------------------------------------------------------------------------- 1 | 6 2 | -------------------------------------------------------------------------------- /sems/sem-09/build/Makefile: -------------------------------------------------------------------------------- 1 | # CMAKE generated file: DO NOT EDIT! 2 | # Generated by "Unix Makefiles" Generator, CMake Version 3.21 3 | 4 | # Default target executed when no arguments are given to make. 5 | default_target: all 6 | .PHONY : default_target 7 | 8 | # Allow only one "make -f Makefile2" at a time, but pass parallelism. 9 | .NOTPARALLEL: 10 | 11 | #============================================================================= 12 | # Special targets provided by cmake. 13 | 14 | # Disable implicit rules so canonical targets will work. 15 | .SUFFIXES: 16 | 17 | # Disable VCS-based implicit rules. 18 | % : %,v 19 | 20 | # Disable VCS-based implicit rules. 21 | % : RCS/% 22 | 23 | # Disable VCS-based implicit rules. 24 | % : RCS/%,v 25 | 26 | # Disable VCS-based implicit rules. 27 | % : SCCS/s.% 28 | 29 | # Disable VCS-based implicit rules. 30 | % : s.% 31 | 32 | .SUFFIXES: .hpux_make_needs_suffix_list 33 | 34 | # Command-line flag to silence nested $(MAKE). 35 | $(VERBOSE)MAKESILENT = -s 36 | 37 | #Suppress display of executed commands. 38 | $(VERBOSE).SILENT: 39 | 40 | # A target that is always out of date. 41 | cmake_force: 42 | .PHONY : cmake_force 43 | 44 | #============================================================================= 45 | # Set environment variables for the build. 46 | 47 | # The shell in which to execute make rules. 48 | SHELL = /bin/sh 49 | 50 | # The CMake executable. 51 | CMAKE_COMMAND = /usr/local/Cellar/cmake/3.21.3_1/bin/cmake 52 | 53 | # The command to remove a file. 54 | RM = /usr/local/Cellar/cmake/3.21.3_1/bin/cmake -E rm -f 55 | 56 | # Escaping for special characters. 57 | EQUALS = = 58 | 59 | # The top-level source directory on which CMake was run. 60 | CMAKE_SOURCE_DIR = /Users/aponomarev/cplusplus-advance-sem/sems/sem-09 61 | 62 | # The top-level build directory on which CMake was run. 63 | CMAKE_BINARY_DIR = /Users/aponomarev/cplusplus-advance-sem/sems/sem-09/build 64 | 65 | #============================================================================= 66 | # Targets provided globally by CMake. 67 | 68 | # Special rule for the target rebuild_cache 69 | rebuild_cache: 70 | @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..." 71 | /usr/local/Cellar/cmake/3.21.3_1/bin/cmake --regenerate-during-build -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) 72 | .PHONY : rebuild_cache 73 | 74 | # Special rule for the target rebuild_cache 75 | rebuild_cache/fast: rebuild_cache 76 | .PHONY : rebuild_cache/fast 77 | 78 | # Special rule for the target edit_cache 79 | edit_cache: 80 | @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake cache editor..." 81 | /usr/local/Cellar/cmake/3.21.3_1/bin/ccmake -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) 82 | .PHONY : edit_cache 83 | 84 | # Special rule for the target edit_cache 85 | edit_cache/fast: edit_cache 86 | .PHONY : edit_cache/fast 87 | 88 | # The main all target 89 | all: cmake_check_build_system 90 | $(CMAKE_COMMAND) -E cmake_progress_start /Users/aponomarev/cplusplus-advance-sem/sems/sem-09/build/CMakeFiles /Users/aponomarev/cplusplus-advance-sem/sems/sem-09/build//CMakeFiles/progress.marks 91 | $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 all 92 | $(CMAKE_COMMAND) -E cmake_progress_start /Users/aponomarev/cplusplus-advance-sem/sems/sem-09/build/CMakeFiles 0 93 | .PHONY : all 94 | 95 | # The main clean target 96 | clean: 97 | $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 clean 98 | .PHONY : clean 99 | 100 | # The main clean target 101 | clean/fast: clean 102 | .PHONY : clean/fast 103 | 104 | # Prepare targets for installation. 105 | preinstall: all 106 | $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 preinstall 107 | .PHONY : preinstall 108 | 109 | # Prepare targets for installation. 110 | preinstall/fast: 111 | $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 preinstall 112 | .PHONY : preinstall/fast 113 | 114 | # clear depends 115 | depend: 116 | $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 117 | .PHONY : depend 118 | 119 | #============================================================================= 120 | # Target rules for targets named main_test 121 | 122 | # Build rule for target. 123 | main_test: cmake_check_build_system 124 | $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 main_test 125 | .PHONY : main_test 126 | 127 | # fast build rule for target. 128 | main_test/fast: 129 | $(MAKE) $(MAKESILENT) -f CMakeFiles/main_test.dir/build.make CMakeFiles/main_test.dir/build 130 | .PHONY : main_test/fast 131 | 132 | #============================================================================= 133 | # Target rules for targets named main 134 | 135 | # Build rule for target. 136 | main: cmake_check_build_system 137 | $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 main 138 | .PHONY : main 139 | 140 | # fast build rule for target. 141 | main/fast: 142 | $(MAKE) $(MAKESILENT) -f CMakeFiles/main.dir/build.make CMakeFiles/main.dir/build 143 | .PHONY : main/fast 144 | 145 | #============================================================================= 146 | # Target rules for targets named lib 147 | 148 | # Build rule for target. 149 | lib: cmake_check_build_system 150 | $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 lib 151 | .PHONY : lib 152 | 153 | # fast build rule for target. 154 | lib/fast: 155 | $(MAKE) $(MAKESILENT) -f CMakeFiles/lib.dir/build.make CMakeFiles/lib.dir/build 156 | .PHONY : lib/fast 157 | 158 | lib.o: lib.cpp.o 159 | .PHONY : lib.o 160 | 161 | # target to build an object file 162 | lib.cpp.o: 163 | $(MAKE) $(MAKESILENT) -f CMakeFiles/lib.dir/build.make CMakeFiles/lib.dir/lib.cpp.o 164 | .PHONY : lib.cpp.o 165 | 166 | lib.i: lib.cpp.i 167 | .PHONY : lib.i 168 | 169 | # target to preprocess a source file 170 | lib.cpp.i: 171 | $(MAKE) $(MAKESILENT) -f CMakeFiles/lib.dir/build.make CMakeFiles/lib.dir/lib.cpp.i 172 | .PHONY : lib.cpp.i 173 | 174 | lib.s: lib.cpp.s 175 | .PHONY : lib.s 176 | 177 | # target to generate assembly for a file 178 | lib.cpp.s: 179 | $(MAKE) $(MAKESILENT) -f CMakeFiles/lib.dir/build.make CMakeFiles/lib.dir/lib.cpp.s 180 | .PHONY : lib.cpp.s 181 | 182 | main.o: main.cpp.o 183 | .PHONY : main.o 184 | 185 | # target to build an object file 186 | main.cpp.o: 187 | $(MAKE) $(MAKESILENT) -f CMakeFiles/main.dir/build.make CMakeFiles/main.dir/main.cpp.o 188 | .PHONY : main.cpp.o 189 | 190 | main.i: main.cpp.i 191 | .PHONY : main.i 192 | 193 | # target to preprocess a source file 194 | main.cpp.i: 195 | $(MAKE) $(MAKESILENT) -f CMakeFiles/main.dir/build.make CMakeFiles/main.dir/main.cpp.i 196 | .PHONY : main.cpp.i 197 | 198 | main.s: main.cpp.s 199 | .PHONY : main.s 200 | 201 | # target to generate assembly for a file 202 | main.cpp.s: 203 | $(MAKE) $(MAKESILENT) -f CMakeFiles/main.dir/build.make CMakeFiles/main.dir/main.cpp.s 204 | .PHONY : main.cpp.s 205 | 206 | tests.o: tests.cpp.o 207 | .PHONY : tests.o 208 | 209 | # target to build an object file 210 | tests.cpp.o: 211 | $(MAKE) $(MAKESILENT) -f CMakeFiles/main_test.dir/build.make CMakeFiles/main_test.dir/tests.cpp.o 212 | .PHONY : tests.cpp.o 213 | 214 | tests.i: tests.cpp.i 215 | .PHONY : tests.i 216 | 217 | # target to preprocess a source file 218 | tests.cpp.i: 219 | $(MAKE) $(MAKESILENT) -f CMakeFiles/main_test.dir/build.make CMakeFiles/main_test.dir/tests.cpp.i 220 | .PHONY : tests.cpp.i 221 | 222 | tests.s: tests.cpp.s 223 | .PHONY : tests.s 224 | 225 | # target to generate assembly for a file 226 | tests.cpp.s: 227 | $(MAKE) $(MAKESILENT) -f CMakeFiles/main_test.dir/build.make CMakeFiles/main_test.dir/tests.cpp.s 228 | .PHONY : tests.cpp.s 229 | 230 | # Help Target 231 | help: 232 | @echo "The following are some of the valid targets for this Makefile:" 233 | @echo "... all (the default if no target is provided)" 234 | @echo "... clean" 235 | @echo "... depend" 236 | @echo "... edit_cache" 237 | @echo "... rebuild_cache" 238 | @echo "... lib" 239 | @echo "... main" 240 | @echo "... main_test" 241 | @echo "... lib.o" 242 | @echo "... lib.i" 243 | @echo "... lib.s" 244 | @echo "... main.o" 245 | @echo "... main.i" 246 | @echo "... main.s" 247 | @echo "... tests.o" 248 | @echo "... tests.i" 249 | @echo "... tests.s" 250 | .PHONY : help 251 | 252 | 253 | 254 | #============================================================================= 255 | # Special targets to cleanup operation of make. 256 | 257 | # Special rule to run CMake to check the build system integrity. 258 | # No rule that depends on this can have commands that come from listfiles 259 | # because they might be regenerated. 260 | cmake_check_build_system: 261 | $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 262 | .PHONY : cmake_check_build_system 263 | 264 | -------------------------------------------------------------------------------- /sems/sem-09/build/cmake_install.cmake: -------------------------------------------------------------------------------- 1 | # Install script for directory: /Users/aponomarev/cplusplus-advance-sem/sems/sem-09 2 | 3 | # Set the install prefix 4 | if(NOT DEFINED CMAKE_INSTALL_PREFIX) 5 | set(CMAKE_INSTALL_PREFIX "/usr/local") 6 | endif() 7 | string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") 8 | 9 | # Set the install configuration name. 10 | if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) 11 | if(BUILD_TYPE) 12 | string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" 13 | CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") 14 | else() 15 | set(CMAKE_INSTALL_CONFIG_NAME "") 16 | endif() 17 | message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") 18 | endif() 19 | 20 | # Set the component getting installed. 21 | if(NOT CMAKE_INSTALL_COMPONENT) 22 | if(COMPONENT) 23 | message(STATUS "Install component: \"${COMPONENT}\"") 24 | set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") 25 | else() 26 | set(CMAKE_INSTALL_COMPONENT) 27 | endif() 28 | endif() 29 | 30 | # Is this installation the result of a crosscompile? 31 | if(NOT DEFINED CMAKE_CROSSCOMPILING) 32 | set(CMAKE_CROSSCOMPILING "FALSE") 33 | endif() 34 | 35 | # Set default install directory permissions. 36 | if(NOT DEFINED CMAKE_OBJDUMP) 37 | set(CMAKE_OBJDUMP "/Library/Developer/CommandLineTools/usr/bin/objdump") 38 | endif() 39 | 40 | if(CMAKE_INSTALL_COMPONENT) 41 | set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt") 42 | else() 43 | set(CMAKE_INSTALL_MANIFEST "install_manifest.txt") 44 | endif() 45 | 46 | string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT 47 | "${CMAKE_INSTALL_MANIFEST_FILES}") 48 | file(WRITE "/Users/aponomarev/cplusplus-advance-sem/sems/sem-09/build/${CMAKE_INSTALL_MANIFEST}" 49 | "${CMAKE_INSTALL_MANIFEST_CONTENT}") 50 | -------------------------------------------------------------------------------- /sems/sem-09/build/liblib.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alexponomarev7/cplusplus-advance-sem/ebc23a5d406670a1fbe8079644d42f716342cfec/sems/sem-09/build/liblib.a -------------------------------------------------------------------------------- /sems/sem-09/build/main: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alexponomarev7/cplusplus-advance-sem/ebc23a5d406670a1fbe8079644d42f716342cfec/sems/sem-09/build/main -------------------------------------------------------------------------------- /sems/sem-09/build/main_test: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alexponomarev7/cplusplus-advance-sem/ebc23a5d406670a1fbe8079644d42f716342cfec/sems/sem-09/build/main_test -------------------------------------------------------------------------------- /sems/sem-09/install_gtest.sh: -------------------------------------------------------------------------------- 1 | git clone https://github.com/google/googletest 2 | cd googletest 3 | mkdir build 4 | cd build 5 | cmake .. 6 | make 7 | make install -------------------------------------------------------------------------------- /sems/sem-09/integration/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alexponomarev7/cplusplus-advance-sem/ebc23a5d406670a1fbe8079644d42f716342cfec/sems/sem-09/integration/tests.py -------------------------------------------------------------------------------- /sems/sem-09/lib.cpp: -------------------------------------------------------------------------------- 1 | #include "lib.h" 2 | 3 | void TokenPC::produce(const std::string& token) { 4 | tokens_.push(token); 5 | } 6 | 7 | std::string TokenPC::consume() { 8 | auto token = tokens_.front(); 9 | tokens_.pop(); 10 | 11 | if (transform_.has_value()) { 12 | return (*transform_)(token); 13 | } 14 | 15 | return token; 16 | } 17 | 18 | void TokenPC::set_transform(std::function transform) { 19 | transform_ = transform; 20 | } 21 | 22 | size_t TokenPC::size() const { 23 | return tokens_.size(); 24 | } 25 | 26 | std::vector heap_sort(const std::vector& vec, Heap& heap) { 27 | for (int x : vec) { 28 | heap.insert(x); 29 | } 30 | 31 | std::vector result; 32 | for (size_t i = 0; i < vec.size(); ++i) { 33 | result.push_back(heap.get_max()); 34 | } 35 | return result; 36 | } -------------------------------------------------------------------------------- /sems/sem-09/lib.h: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | 5 | class TokenPC { 6 | public: 7 | void produce(const std::string& token); 8 | std::string consume(); 9 | 10 | void set_transform(std::function transform); 11 | 12 | size_t size() const; 13 | 14 | private: 15 | std::optional> transform_; 16 | std::queue tokens_; 17 | }; 18 | 19 | 20 | class Heap { 21 | public: 22 | virtual void insert(int x) = 0; 23 | virtual int get_max() = 0; 24 | }; 25 | 26 | std::vector heap_sort(const std::vector& vec, Heap& heap); -------------------------------------------------------------------------------- /sems/sem-09/main.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include "lib.h" 3 | 4 | void read_tokens(TokenPC& pc) { 5 | std::string token; 6 | std::cin >> token; 7 | pc.produce(token); 8 | } 9 | 10 | void extract_tokens(TokenPC& pc) { 11 | std::string token = pc.consume(); 12 | std::cout << token; 13 | } 14 | 15 | int main() { 16 | TokenPC pc; 17 | read_tokens(pc); 18 | extract_tokens(pc); 19 | 20 | return 0; 21 | } -------------------------------------------------------------------------------- /sems/sem-09/tests.cpp: -------------------------------------------------------------------------------- 1 | #include "lib.h" 2 | #include "gtest/gtest.h" 3 | #include "gmock/gmock.h" 4 | 5 | #include 6 | #include 7 | #include 8 | #include 9 | 10 | using testing::Return; 11 | 12 | TEST(TestPC, test_simple) { 13 | TokenPC pc; 14 | pc.produce("hello"); 15 | ASSERT_EQ(pc.consume(), "hello"); 16 | } 17 | 18 | class TestWithFunction : public ::testing::Test { 19 | public: 20 | void SetUp() { 21 | pc_.produce("Sample_String"); 22 | } 23 | 24 | void TearDown() { 25 | ASSERT_EQ(pc_.size(), 0); 26 | } 27 | 28 | public: 29 | TokenPC pc_; 30 | }; 31 | 32 | TEST_F(TestWithFunction, upper_case) { 33 | pc_.set_transform([](std::string token) { 34 | std::transform(token.begin(), token.end(), token.begin(), [](char c) { 35 | return std::toupper(c); 36 | }); 37 | return token; 38 | }); 39 | 40 | ASSERT_EQ(pc_.consume(), "SAMPLE_STRING"); 41 | } 42 | 43 | class TestUpperFixture : public ::testing::TestWithParam { 44 | protected: 45 | TestUpperFixture() { 46 | pc_.set_transform([](std::string token) { 47 | std::transform(token.begin(), token.end(), token.begin(), [](char c) { 48 | return std::toupper(c); 49 | }); 50 | return token; 51 | }); 52 | } 53 | 54 | protected: 55 | TokenPC pc_; 56 | }; 57 | 58 | 59 | TEST_P(TestUpperFixture, different_tokens) { 60 | std::string token = GetParam(); 61 | pc_.produce(token); 62 | 63 | std::transform(token.begin(), token.end(), token.begin(), [](char c) { 64 | return std::toupper(c); 65 | }); 66 | 67 | ASSERT_EQ(pc_.consume(), token); 68 | } 69 | 70 | INSTANTIATE_TEST_SUITE_P(UpperTests, TestUpperFixture, 71 | ::testing::Values( 72 | "hello_world", "sample_string", "NuMs145" 73 | ) 74 | ); 75 | 76 | class MockHeap : public Heap { 77 | public: 78 | MOCK_METHOD(void, insert, (int x), (override)); 79 | MOCK_METHOD(int, get_max, (), (override)); 80 | }; 81 | 82 | TEST(HeapTests, simple) { 83 | std::vector ints = {2, 1, 3}; 84 | MockHeap heap; 85 | EXPECT_CALL(heap, get_max()) 86 | .Times(3) 87 | .WillOnce(Return(3)) 88 | .WillOnce(Return(2)) 89 | .WillOnce(Return(1)); 90 | 91 | EXPECT_CALL(heap, insert(2)); 92 | EXPECT_CALL(heap, insert(1)); 93 | EXPECT_CALL(heap, insert(3)); 94 | 95 | auto expected = std::vector{3, 2, 1}; 96 | ASSERT_EQ(heap_sort(ints, heap), expected); 97 | } --------------------------------------------------------------------------------