I guess that many people coming from a common OO language will look for
this and it seems natural to look in the
manual in the sections 'Types' or 'Methods'. Maybe somewhere near the
discussion of fields in
Composite Types
<http://julia.readthedocs.org/en/latest/manual/types/#composite-types>. It
looks like before Immutable Composite Types
<http://julia.readthedocs.org/en/latest/manual/types/#immutable-composite-types>
would be good. For instance: (with existing surrounding text)
You can also change the values as one would expect:
blah
blah
You can associate static data with a type like this:
static_data(::Type{MyObj}) = 1
static_data(::Type{MyOtherObj}) = 2
Composite types with no fields are singletons ....
On Thursday, January 1, 2015 8:34:48 AM UTC+1, [email protected] wrote:
>
>
>
> On Thursday, January 1, 2015 11:45:00 AM UTC+10, Jameson wrote:
>>
>> method dispatch on the object type does a remarkably good job at
>> providing this functionality without needing a specialized feature:
>>
>> static_data(::Type{MyObj}) = 1
>> static_data(::Type{MyOtherObj}) = 2
>>
>
> Would like to document this, but not sure where it should go?
>
>
>>
>>
>> On Wed Dec 31 2014 at 8:23:40 PM Josh Langsfeld <[email protected]> wrote:
>>
>>> I currently am trying to solve a problem where I have many composite
>>> types and I would like to associate some data with each type, such that
>>> every instance has access to it. Obviously, in C++ I would just create a
>>> static member variable.
>>>
>>> Is there a good way to go about this in Julia? Currently, I have it
>>> working by using a global Dict mapping DataType objects to their associated
>>> data but I really don't like this. Something more naive like just adding
>>> that field to every object instance also strikes me as unnecessary and
>>> wasteful. I haven't seen any significant discussion about static fields on
>>> the lists or on github so is this something that could be considered for
>>> addition to the language?
>>>
>>> Thanks,
>>> Josh
>>>
>>