Fields don't show default value
IDLdoc 3.5.1 will properly detect the fields "data" and "some_field". However, I'd like not only to see that "some_field" is "0L", but that "some_field" is set to "10L" (see second code block for actual IDLdoc output). NB: I also tried setting attributes on the fields (e.g. "some_field : type="long", default="10L"), but IDLdoc ignored them.
For now I just decided to add the default value to the comment blocks.
BTW: Would it be possible (in order to reduce duplication) to reuse the field documentation in :fields: in their corresponding :properties:, SetProperties, and GetProperties counterparts (e.g. if left empty)?
;+
; :description:
; Constructor
;
; :fields:
; data
; internal data storage variable (default: fltarr(10))
; some_field
; some other internal data storage variable (default: 10L)
;-
pro class_name__define
compile_opt idl2, hidden
void = { class_name, $
data:fltarr(10), $
some_field:10L $
}
end
Fields
Fields in class_name
some_field 0L
some other internal data storage variable (default: 10L)
data fltarr(10)
internal data storage variable (default: fltarr(10))
I think it would be useful to allow default values be documented like:
some_field : default=10L
description of some_field
Be careful, though, setting some_field:10L in the definition of the member variables as in the above example does not set the default value for objects of the class!
You're right, of course. I do like the idea of allowing to set the default value.