#ifndef POLSERVER_FLOWCONTROLLABEL_H #define POLSERVER_FLOWCONTROLLABEL_H #include #include namespace Pol::Bscript::Compiler { class InstructionEmitter; class FlowControlLabel { public: FlowControlLabel(); bool has_address() const; unsigned address() const; const std::vector& get_referencing_instruction_addresses() const; void assign_address( unsigned ); void add_referencing_instruction_address( unsigned ); private: std::optional maybe_address; std::vector referencing_instruction_addresses; }; } // namespace Pol::Bscript::Compiler #endif // POLSERVER_FLOWCONTROLLABEL_H