Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Do they offer the header generator as a standalone tool?

I figured this was possible but haven't seen anything that does it. I hate writing function signatures twice with subtle differences like default args and overrides. Waste of my time.



Is header generation substantially faster than compilation? I guess it skips codegen and instead replaces it with header generation, but isn't most of the time spent in parsing/semantic analysis? Or is header generation done in some hacky way that's much faster than full parsing?


I think the point of header generation is not to save compilation time, but to save developer time. Saving them from writing the same thing twice, in header and in implementation.


It's not that sort of header generation, it's a straight up code generator. You can write

    #include "MyClass.gen.h"

    UCLASS()
    class UMyClass : public UObject
    {
        GENERATED_BODY()

    public:

        UPROPERTY(BlueprintReadWrite, EditAnywhere )
        float MyFloat = 1.f;

        UPROPERTY()
        APlayerController* MyPc;
    };
in a header, and you get garbage collection, serialisation, script binding, editor UI out of the generated code.


Exactly this. I already have to wait 3 to 10 minutes for compiles. Can't imagine header generation will add substantially more.


The header gen is much faster than compilation, and is just a code generator. My project takes about 20 minutes for a clean build, the header generation is about 10 seconds at the beginning.


How is that even possible? Is header generation hacky? Or does it really generate the AST?


It generates a header and cpp file for each header that it parses. It generates some pretty rudimentary c++ with a bunch of macros, and it looks like very generated code. It's then compiled after, but the nature of the generated code is fairly simple c++ so the cost isn't enormous


It's not that sort of tool. It's called UnrealHeaderTool, but it's a straight up code generator.




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: