diff options
Diffstat (limited to 'python/src/com/jetbrains/python/documentation/StructuredDocStringBase.java')
-rw-r--r-- | python/src/com/jetbrains/python/documentation/StructuredDocStringBase.java | 26 |
1 files changed, 18 insertions, 8 deletions
diff --git a/python/src/com/jetbrains/python/documentation/StructuredDocStringBase.java b/python/src/com/jetbrains/python/documentation/StructuredDocStringBase.java index 9f6cecba7a84..36b70ec0f76a 100644 --- a/python/src/com/jetbrains/python/documentation/StructuredDocStringBase.java +++ b/python/src/com/jetbrains/python/documentation/StructuredDocStringBase.java @@ -43,18 +43,21 @@ public abstract class StructuredDocStringBase implements StructuredDocString { private static final Pattern RE_LOOSE_TAG_LINE = Pattern.compile("([a-z]+) ([a-zA-Z_0-9]*):?([^:]*)"); private static final Pattern RE_ARG_TYPE = Pattern.compile("(.*) ([a-zA-Z_0-9]+)"); - public static String[] PARAM_TAGS = new String[] { "param", "parameter", "arg", "argument" }; - public static String[] PARAM_TYPE_TAGS = new String[] { "type" }; - public static String[] VARIABLE_TAGS = new String[] { "ivar", "cvar", "var" }; + public static String[] PARAM_TAGS = new String[]{"param", "parameter", "arg", "argument"}; + public static String[] PARAM_TYPE_TAGS = new String[]{"type"}; + public static String[] VARIABLE_TAGS = new String[]{"ivar", "cvar", "var"}; - public static String[] RAISES_TAGS = new String[] { "raises", "raise", "except", "exception" }; - public static String[] RETURN_TAGS = new String[] { "return", "returns" }; + public static String[] RAISES_TAGS = new String[]{"raises", "raise", "except", "exception"}; + public static String[] RETURN_TAGS = new String[]{"return", "returns"}; + @NotNull + private final String myTagPrefix; public enum ReferenceType {PARAMETER, PARAMETER_TYPE, KEYWORD, VARIABLE, CLASS_VARIABLE, INSTANCE_VARIABLE} public static String TYPE = "type"; protected StructuredDocStringBase(@NotNull String docStringText, String tagPrefix) { + myTagPrefix = tagPrefix; final Substring docString = new Substring(docStringText); final List<Substring> lines = docString.splitLines(); final int nlines = lines.size(); @@ -74,6 +77,12 @@ public abstract class StructuredDocStringBase implements StructuredDocString { } @Override + @NotNull + public String createParameterType(@NotNull final String name, @NotNull final String type) { + return myTagPrefix + TYPE + String.format(" %s %s", name, type); + } + + @Override public String getDescription() { return myDescription; } @@ -82,8 +91,9 @@ public abstract class StructuredDocStringBase implements StructuredDocString { public String getSummary() { final List<String> strings = StringUtil.split(StringUtil.trimLeading(myDescription), "\n", true, false); if (strings.size() > 1) { - if (strings.get(1).isEmpty()) + if (strings.get(1).isEmpty()) { return strings.get(0); + } } return ""; } @@ -216,8 +226,8 @@ public abstract class StructuredDocStringBase implements StructuredDocString { @Override @Nullable - public Substring getParamByNameAndKind(@NotNull String name, String kind) { - for (Substring s: getTagArguments(kind)) { + public Substring getParamByNameAndKind(@NotNull String name, String kind) { + for (Substring s : getTagArguments(kind)) { if (name.equals(s.getValue())) { return s; } |