Gabor Szarnyas
Gabor Szarnyas

Reputation: 5057

How to access attributes from subtypes

I followed the TSL documentation on attributes and created two classes:

[GraphNode]
cell struct Fruit
{
    string color;
}

[GraphNode, BaseType : Fruit]
cell struct Apple
{
    string variety;
}

I used the generated code like this:

Apple apple = new Apple();
Console.WriteLine(apple.variety);
Console.WriteLine(apple.color);

The code can access the variety field, but cannot access the color field:

'Apple' does not contain a definition for 'color' and no extension method 'color' accepting a first argument of type 'Apple' could be found (are you missing a using directive or an assembly reference?)

How can I access the inherited attribute?

Upvotes: 0

Views: 76

Answers (1)

Andreas Hassmann
Andreas Hassmann

Reputation: 243

Those attributes do not have an intrinsic meaning apart from the meaning you attach to them. "BaseType" does not make Apple derive from Fruit. You can just ask in your code for the value of the attribute "BaseType" on your cell.

Upvotes: 1

Related Questions