From d3ab7243bd15f0f98196d47f55367b320b60de0b Mon Sep 17 00:00:00 2001 From: Fernando Dodino Date: Thu, 20 Aug 2020 12:34:38 -0300 Subject: [PATCH] Fix #1817 - adding attributes to wollokdoc (#1914) --- .../Generate WollokDoc.launch | 3 ++- .../wollok/wollokDoc/WollokDocParser.xtend | 20 ++++++++++++++++++- wollok-language | 2 +- 3 files changed, 22 insertions(+), 3 deletions(-) diff --git a/org.uqbar.project.wollok.launch/Generate WollokDoc.launch b/org.uqbar.project.wollok.launch/Generate WollokDoc.launch index dbacf27bb9..406954783a 100644 --- a/org.uqbar.project.wollok.launch/Generate WollokDoc.launch +++ b/org.uqbar.project.wollok.launch/Generate WollokDoc.launch @@ -9,7 +9,8 @@ - + + diff --git a/org.uqbar.project.wollok.launch/src/org/uqbar/project/wollok/wollokDoc/WollokDocParser.xtend b/org.uqbar.project.wollok.launch/src/org/uqbar/project/wollok/wollokDoc/WollokDocParser.xtend index 01250b286a..98f8d3d80f 100644 --- a/org.uqbar.project.wollok.launch/src/org/uqbar/project/wollok/wollokDoc/WollokDocParser.xtend +++ b/org.uqbar.project.wollok.launch/src/org/uqbar/project/wollok/wollokDoc/WollokDocParser.xtend @@ -19,6 +19,7 @@ import org.uqbar.project.wollok.wollokDsl.WConstructor import org.uqbar.project.wollok.wollokDsl.WFile import org.uqbar.project.wollok.wollokDsl.WMethodContainer import org.uqbar.project.wollok.wollokDsl.WMethodDeclaration +import org.uqbar.project.wollok.wollokDsl.WVariableDeclaration import static org.uqbar.project.wollok.sdk.WollokSDK.* @@ -198,12 +199,21 @@ class WollokDocParser extends WollokChecker { writeFile(TABLE_ROW_ON) val abstractDescription = if (m.abstract) badge("abstract", "light-blue") + SPACE else "" val nativeDescription = if (m.native) badge("native", "indigo") else "" - writeFile("" + CODE_ON + BOLD_ON + m.name + BOLD_OFF + m.parametersAsString + CODE_OFF + SPACE + + writeFile("" + CODE_ON + BOLD_ON + m.name + BOLD_OFF + m.parametersAsString + CODE_OFF + SPACE + abstractDescription + SPACE + SPACE + nativeDescription + SPACE + TABLE_DATA_OFF + TABLE_DATA_ON + comment + TABLE_DATA_OFF) writeFile(TABLE_ROW_OFF) } } + + def dispatch void generateWollokDoc(WVariableDeclaration v) { + val comment = v.comment + writeFile(TABLE_ROW_ON) + writeFile("" + CODE_ON + BOLD_ON + v.variable.name + BOLD_OFF + CODE_OFF + SPACE + + SPACE + TABLE_DATA_OFF + + TABLE_DATA_ON + comment + TABLE_DATA_OFF) + writeFile(TABLE_ROW_OFF) + } def dispatch getDefinedConstructors(WMethodContainer mc) { newArrayList } def dispatch getDefinedConstructors(WClass c) { c.constructors } @@ -220,6 +230,14 @@ class WollokDocParser extends WollokChecker { writeFile(TABLE_OFF) writeFile(HORIZONTAL_LINE) } + val attributes = mc.variableDeclarations + if (!attributes.isEmpty) { + header2("Attributes") + writeFile(TABLE_ON) + attributes.forEach [ generateWollokDoc ] + writeFile(TABLE_OFF) + writeFile(HORIZONTAL_LINE) + } if (!mc.methods.isEmpty) { header2("Behavior") writeFile(TABLE_ON) diff --git a/wollok-language b/wollok-language index a95d43b3dd..d238c5459e 160000 --- a/wollok-language +++ b/wollok-language @@ -1 +1 @@ -Subproject commit a95d43b3ddc0b8e056a58a4cecb1dbd44e13b1ff +Subproject commit d238c5459ebde8b5640358c2f64f7a2fd64e0603