gencpp/scripts
2023-08-20 10:17:55 -04:00
..
helpers New build script works for clang and msvc! 2023-08-19 21:33:01 -04:00
.clang-format Fixes to serialization, reduced Define_CodeType macro 2023-08-06 17:19:57 -04:00
build.ps1 Singleheader now compiles with new build script on both clang & msvc 2023-08-20 10:17:55 -04:00
clean.ps1 Scripting updates, some refactors.. 2023-08-09 18:47:59 -04:00
genccp.natstepfilter Fixes to memory mangment, library is much faster now. 2023-07-16 18:00:07 -04:00
gencpp.natvis Scripting updates, some refactors.. 2023-08-09 18:47:59 -04:00
gencpp.refactor Scripting updates, some refactors.. 2023-08-09 18:47:59 -04:00
package_release.ps1 Scripting updates, some refactors.. 2023-08-09 18:47:59 -04:00
Readme.md More refactoring, getting rid of meson in favor of just powershell scripts 2023-08-19 12:18:48 -04:00
refactor.ps1 Added refactor.ps1 script, fixed the gencpp.refactor script (missing commas) 2023-07-24 23:47:04 -04:00
test.gen_build.ci.ps1 Reorganization of files, refactors, doc updates (WIP) 2023-07-29 05:52:06 -04:00
test.gen_build.ps1 Fixes for test generation (sanity, soa). 2023-07-29 13:15:53 -04:00
test.gen_run.ps1 Fixes and improvements to serialization. 2023-08-08 22:14:58 -04:00

Scripts

Generation, testing, and cleanup scripts for the test directory are found here along with natvis and natstepfilter files for debugging.

Refactoring

refactor.ps1 Provides a way to run the refactor program. It uses the gencpp.refactor script to complete a mass refactor of all content within the files of the specified within the script.

Currently refactor only supports naive sort of find and replace feature set and will not be able to rename identifiers excluisvely to a specific context (such as only renaming member names of a specific struct, etc).

Note: The following macros are used with specifiers and token parsing within the library:

  • global
  • internal
  • local_persist
  • forceinline
  • neverinline

IF they are changed the following files would need adjustment:

  • ./project/enums/ESpecifier.csv
  • ./project/enums/ETokType.csv
  • ./project/helpers/helper.hpp

Build & Run Scripts

clean.ps1
Remove any generated content from the repository.

build.ps1
Build bootstrap, singleheader, or tests. Supports MSVC or clang, release or debug.

args:
    bootstrap
    singleheader
    test
    clang
    msvc
    release

test.gen.build.ps1
Build the metaprogram for generating the test code.

test.gen.ps1
Build (if not already) the metaprogram for generating test code, then run it to generate code.

test.build.ps1
Build and run metaprogram, build test program.

test.run.ps1
Build and run metaprogram, build and run test program.

Note: My env is Windows 11 with MSVC 2022 and clang 16.0.6