Removed nullablity from Markwon class (no null markdown)

This commit is contained in:
Dimitry Ivanov 2017-11-05 12:18:33 +03:00
parent d75590c225
commit 6b1fb554f2
2 changed files with 16 additions and 37 deletions

View File

@ -2,8 +2,6 @@ package ru.noties.markwon;
import android.content.Context; import android.content.Context;
import android.support.annotation.NonNull; import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.text.TextUtils;
import android.text.method.LinkMovementMethod; import android.text.method.LinkMovementMethod;
import android.widget.TextView; import android.widget.TextView;
@ -61,7 +59,7 @@ public abstract class Markwon {
public static void setMarkdown( public static void setMarkdown(
@NonNull TextView view, @NonNull TextView view,
@NonNull SpannableConfiguration configuration, @NonNull SpannableConfiguration configuration,
@Nullable String markdown @NonNull String markdown
) { ) {
setText(view, markdown(configuration, markdown)); setText(view, markdown(configuration, markdown));
@ -98,16 +96,10 @@ public abstract class Markwon {
* @return parsed markdown * @return parsed markdown
* @since 1.0.0 * @since 1.0.0
*/ */
@Nullable @NonNull
public static CharSequence markdown(@NonNull Context context, @Nullable String markdown) { public static CharSequence markdown(@NonNull Context context, @NonNull String markdown) {
final CharSequence out; final SpannableConfiguration configuration = SpannableConfiguration.create(context);
if (TextUtils.isEmpty(markdown)) { return markdown(configuration, markdown);
out = null;
} else {
final SpannableConfiguration configuration = SpannableConfiguration.create(context);
out = markdown(configuration, markdown);
}
return out;
} }
/** /**
@ -119,18 +111,12 @@ public abstract class Markwon {
* @see SpannableConfiguration * @see SpannableConfiguration
* @since 1.0.0 * @since 1.0.0
*/ */
@Nullable @NonNull
public static CharSequence markdown(@NonNull SpannableConfiguration configuration, @Nullable String markdown) { public static CharSequence markdown(@NonNull SpannableConfiguration configuration, @NonNull String markdown) {
final CharSequence out; final Parser parser = createParser();
if (TextUtils.isEmpty(markdown)) { final Node node = parser.parse(markdown);
out = null; final SpannableRenderer renderer = new SpannableRenderer();
} else { return renderer.render(configuration, node);
final Parser parser = createParser();
final Node node = parser.parse(markdown);
final SpannableRenderer renderer = new SpannableRenderer();
out = renderer.render(configuration, node);
}
return out;
} }
/** /**

View File

@ -1,7 +1,6 @@
package ru.noties.markwon.renderer; package ru.noties.markwon.renderer;
import android.support.annotation.NonNull; import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import org.commonmark.node.Node; import org.commonmark.node.Node;
@ -10,16 +9,10 @@ import ru.noties.markwon.SpannableConfiguration;
public class SpannableRenderer { public class SpannableRenderer {
@Nullable @NonNull
public CharSequence render(@NonNull SpannableConfiguration configuration, @Nullable Node node) { public CharSequence render(@NonNull SpannableConfiguration configuration, @NonNull Node node) {
final CharSequence out; final SpannableBuilder builder = new SpannableBuilder();
if (node == null) { node.accept(new SpannableMarkdownVisitor(configuration, builder));
out = null; return builder.text();
} else {
final SpannableBuilder builder = new SpannableBuilder();
node.accept(new SpannableMarkdownVisitor(configuration, builder));
out = builder.text();
}
return out;
} }
} }