idldoc icon indicating copy to clipboard operation
idldoc copied to clipboard

Fields don't show default value

Open ennosigaeus opened this issue 13 years ago • 2 comments

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))

ennosigaeus avatar Dec 19 '12 08:12 ennosigaeus

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!

mgalloy avatar Dec 19 '12 19:12 mgalloy

You're right, of course. I do like the idea of allowing to set the default value.

ennosigaeus avatar Dec 19 '12 20:12 ennosigaeus