Hi,

first, your example shows a method whoe name starts with "get". That does 
not imply that this is a getter, it's just a method like any other method.

There is no option in the IDL syntax, since it is language agnostic.
Available options special to c++ are these

cpp (C++):
   cob_style:       Generate "Continuation OBject"-style classes.
   no_client_completion:  Omit calls to completion__() in CobClient class.
   no_default_operators: Omits generation of default operators ==, != and <
   templates:       Generate templatized reader/writer methods.
   pure_enums:      Generate pure enums instead of wrapper classes.
   include_prefix:  Use full include paths in generated files.
   moveable_types:  Generate move constructors and assignment operators.
   no_ostream_operators:  Omit generation of ostream definitions.
   no_skeleton:     Omits generation of skeleton.

In addition, there's the possibility to specify annotations in the IDL:

- cpp.customostream   ... prevents emitting implementations for operator <<
- cpp.type ..... override C++ type name
- final ...... adds noexcept to DTORs


So I would say no, not possible. You will have to patch the compiler 
yourself to achive that.


-----Ursprüngliche Nachricht----- 
From: Gianni Ambrosio
Sent: Monday, February 10, 2020 4:23 PM
To: user@thrift.apache.org
Subject: const method

Dear All,
is it possible to write a .thrift file so that c++ generared getter
methods are const?

Example:

myservice.thrift

service MyService {
    string getName(1: i32 id),

MyService.h

class MyServiceClient : virtual public MyServiceIf {
    void getName(std::string& _return, const int32_t id) const;


Regards,
Gianni 

Reply via email to