Hi Nikos,

If you'd like us to help you, you need to provide the exact code you
actually wrote, and the exact error it produced.

The code you provided in your first e-mail has numerous syntax errors such
that it can't compile as-is. When I fixed those errors, it worked fine.
That is, if I put the following in a file and compile it, I get no errors:

@0xc39ccf0ba082696f;

struct Foo(A) {
  field @0 :A;
}

struct B {}

struct C {
  field @0 :List(Foo(B));
}


So, I do not know what problem you are actually having.

-Kenton

On Mon, May 4, 2020 at 6:21 PM nikos efthias <[email protected]>
wrote:

>
> I need a List(foo(b)) that is the problem capnp compile command generates
> an error sayingI need to pass pointers rather than b itself
> so I cant compile my schema because it need a pointer type at compile time
> and you are saying there is no such thing in capnproto which makes using
> generics impossible in nested levels as i understand
>
> On Tuesday, May 5, 2020 at 3:12:40 AM UTC+4, Ian Denhardt wrote:
>>
>> "Pointers" aren't an explicit thing in the schema language. Data, Text,
>> structs, lists and interfaces are implicitly pointers, while primitive
>> types like Bool and Float64 are not. Type parameters must always be
>> pointer types. So in this case you can just do:
>>
>> struct Foo(A) {
>>     field @0 :A;
>> }
>>
>> struct B{};
>>
>> struct C {
>>     field :List(B);
>> }
>>
>> -Ian
>>
>> Quoting nikos efthias (2020-05-04 18:01:44)
>> >    I have a Struct containing generics which accepts another struct
>> such
>> >    as
>> >    ```
>> >    struct foo (a){
>> >    � � �  field @0 :a
>> >    }
>> >    struct b{}
>> >    struct c{
>> >    field:List(a(b)
>> >    }
>> >    ```
>> >    the example above wont work because I need to pass a b pointer to a
>> but
>> >    There is no documentation for defining pointers
>> >    I tried *b and &b which does not work.
>> >    How do I define the pointer?
>> >
>> >    --
>> >    You received this message because you are subscribed to the Google
>> >    Groups "Cap'n Proto" group.
>> >    To unsubscribe from this group and stop receiving emails from it,
>> send
>> >    an email to [1][email protected].
>> >    To view this discussion on the web visit
>> >    [2]
>> https://groups.google.com/d/msgid/capnproto/bd400995-9d98-4caf-8e10-
>> >    81a3fe1de564%40googlegroups.com.
>> >
>> > Verweise
>> >
>> >    1. mailto:[email protected]
>> >    2.
>> https://groups.google.com/d/msgid/capnproto/bd400995-9d98-4caf-8e10-81a3fe1de564%40googlegroups.com?utm_medium=email&utm_source=footer
>>
> --
> You received this message because you are subscribed to the Google Groups
> "Cap'n Proto" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/capnproto/d4352bf6-762a-4367-b26e-ed0f6be92018%40googlegroups.com
> <https://groups.google.com/d/msgid/capnproto/d4352bf6-762a-4367-b26e-ed0f6be92018%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>

-- 
You received this message because you are subscribed to the Google Groups 
"Cap'n Proto" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/capnproto/CAJouXQmp9UiyfuWBkkekdh9r9SKTj3P7WnvZSgapABVv%2BXe7yQ%40mail.gmail.com.

Reply via email to