From 5592c705d8ac98f579e2675c12777330c4c322c9 Mon Sep 17 00:00:00 2001 From: Filipe Alves Date: Thu, 14 Jul 2016 10:30:29 +0100 Subject: Add parameter in/out specifiers to output. --- src/perlmodgen.cpp | 34 ++++++++++++++++++++++++++++++---- 1 file changed, 30 insertions(+), 4 deletions(-) diff --git a/src/perlmodgen.cpp b/src/perlmodgen.cpp index c7d562f..09e1968 100644 --- a/src/perlmodgen.cpp +++ b/src/perlmodgen.cpp @@ -1269,17 +1269,43 @@ void PerlModDocVisitor::visitPre(DocParamList *pl) DocNode *param; for (li.toFirst();(param=li.current());++li) { - QCString s; + QCString name; if (param->kind()==DocNode::Kind_Word) { - s = ((DocWord*)param)->word(); + name = ((DocWord*)param)->word(); } else if (param->kind()==DocNode::Kind_LinkedWord) { - s = ((DocLinkedWord*)param)->word(); + name = ((DocLinkedWord*)param)->word(); } + + QCString dir = ""; + DocParamSect *sect = 0; + if (pl->parent()->kind()==DocNode::Kind_ParamSect) + { + sect=(DocParamSect*)pl->parent(); + } + if (sect && sect->hasInOutSpecifier()) + { + if (pl->direction()!=DocParamSect::Unspecified) + { + if (pl->direction()==DocParamSect::In) + { + dir = "in"; + } + else if (pl->direction()==DocParamSect::Out) + { + dir = "out"; + } + else if (pl->direction()==DocParamSect::InOut) + { + dir = "in,out"; + } + } + } + m_output.openHash() - .addFieldQuotedString("name", s) + .addFieldQuotedString("name", name).addFieldQuotedString("dir", dir) .closeHash(); } m_output.closeList() -- cgit v0.12