-redef class Variable
- private fun decorate_tag(res: HTMLTag, token: Token)
- do
- if declared_type == null then return
- res.attrs["title"] = name + ": " + declared_type.to_s
- end
-end
-
-redef class AVarFormExpr
- redef fun decorate_tag(res, token)
- do
- res.add_class("nc_v")
- var variable = self.variable
- if variable == null then return
- variable.decorate_tag(res, token)
- end
-end
-
-redef class AVardeclExpr
- redef fun decorate_tag(res, token)
- do
- res.add_class("nc_v")
- var variable = self.variable
- if variable == null then return
- variable.decorate_tag(res, token)
- end
-end
-
-redef class AForExpr
- redef fun decorate_tag(res, token)
- do
- res.add_class("nc_v")
- var vs = variables
- if vs == null then return
- var idx = n_ids.index_of(token.as(TId))
- var variable = vs[idx]
- variable.decorate_tag(res, token)
- end
-end
-
-redef class AParam
- redef fun decorate_tag(res, token)
- do
- res.add_class("nc_v")
- var mp = mparameter
- if mp == null then return
- res.attrs["title"] = mp.name + ": " + mp.mtype.to_s
- end
-end
-
-redef class AAssertExpr
- redef fun decorate_tag(res, token)
- do
- res.add_class("nc_ast")
- end
-end
-
-redef class ALabel
- redef fun decorate_tag(res, token)
- do
- res.add_class("nc_la")
- end
-end
-
-redef class ASendExpr
- redef fun decorate_tag(res, token)
- do
- if callsite == null then return
- var mpropdef = callsite.mpropdef
- res.attrs["title"] = mpropdef.to_s + callsite.msignature.to_s
- res.attrs["link"] = mpropdef.mclassdef.mmodule.name + ".html#" + mpropdef.to_s
- end
-end
-
-redef class ANewExpr
- redef fun decorate_tag(res, token)
- do
- if callsite == null then return
- var mpropdef = callsite.mpropdef
- res.attrs["title"] = mpropdef.to_s + callsite.msignature.to_s
- res.attrs["link"] = mpropdef.mclassdef.mmodule.name + ".html#" + mpropdef.to_s
- end
-end
-
-redef class AAssignOp
- redef fun decorate_tag(res, v)
- do
- var p = parent
- assert p isa AReassignFormExpr
-
- var callsite = p.reassign_callsite
- if callsite == null then return
- var mpropdef = callsite.mpropdef
- res.attrs["title"] = mpropdef.to_s + callsite.msignature.to_s
- res.attrs["link"] = mpropdef.mclassdef.mmodule.name + ".html#" + mpropdef.to_s
- end
-end
-
-redef class AModuleName
- redef fun decorate_tag(res, token)
- do
- parent.decorate_tag(res, token)
- end
-end
-
-redef class AModuledecl
- redef fun decorate_tag(res, token)
- do
- res.add_class("nc_def")
- res.add_class("nc_m")
- var p = parent
- assert p isa AModule
- var mm = p.mmodule
- if mm == null then return
- res.attrs["title"] = mm.full_name
- end