Yes, that should work. Unless I'm misunderstanding something, you should
just be able to do what Henner suggested above to accomplish this.

On Fri, Apr 7, 2017 at 5:46 AM, <[email protected]> wrote:

> Hi, on the same lines need help on an idea.
>
> Is it possible to define my enums in one .proto file and use them across
> other .proto files.
> In context of grpc protobuf3.
>
> Any help is appreciated.
>
> On Friday, December 7, 2012 at 10:49:29 AM UTC+5:30, Henner Zeller wrote:
>>
>> On 6 December 2012 15:32, Milan Stankovic <[email protected]> wrote:
>>
>>> Is possible to use enum from external class ? I have couple .proto
>>> definition and all need to use same enum Type with same tokens. I want to
>>> avoid definition of same enum in every class and to avoid sync between, I
>>> have that enum in regular external c++ class which I use in code.
>>
>>
>> It is not possible to have an external C++ enum somewhere, as this would
>> require the proto parser to parse C++.
>>
>> However, what I usually do in that case is to define my enumeration in a
>> separate *.proto file
>> myenums.proto ---
>> enum Foo {
>>    a = 1;
>>    b = 2;
>>    c = 3;
>> };
>>
>> enum Bar {
>>     x = 1;
>> }
>> ------
>>
>> from this, you can generate a myenums.pb.h - it essentially contains the
>> enumerations as you would write them in C++ anyway, and some useful
>> conversion functions (e.g. that convert it to a printable version).
>> (also, this would generate enumeration for other languages as well, if
>> you need it). From there, you can just use these enums as any other enums.
>>
>> Also, in your other proto-buffer files, you then can import this file and
>>  use the enumeration
>>
>> otherprotofile.proto ----
>> import "myenmus.proto";
>>
>> message MyMessage {
>>   Foo foo_enum = 1;
>> };
>> ----------
>>
>>> --
>>> You received this message because you are subscribed to the Google
>>> Groups "Protocol Buffers" group.
>>> To view this discussion on the web visit https://groups.google.com/d/ms
>>> g/protobuf/-/H0dBbyOrwrgJ.
>>> To post to this group, send email to [email protected].
>>> To unsubscribe from this group, send email to
>>> [email protected].
>>> For more options, visit this group at http://groups.google.com/group
>>> /protobuf?hl=en.
>>>
>>
>> --
> You received this message because you are subscribed to the Google Groups
> "Protocol Buffers" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at https://groups.google.com/group/protobuf.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Protocol Buffers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/protobuf.
For more options, visit https://groups.google.com/d/optout.

Reply via email to