class Link extends Node {

    private String destination;
    private String title;

    public Link() {
    }

    public Link(String destination, String title) {
        this.destination = destination;
        this.title = title;
    }

    @Override
    public void accept(Visitor visitor) {
        visitor.visit(this);
    }

    public String getDestination() {
        return destination;
    }

    public void setDestination(String destination) {
        this.destination = destination;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    @Override
    protected String toStringAttributes() {<FILL_FUNCTION_BODY>}
}

        return "destination=" + destination + ", title=" + title;
    
<methods>public non-sealed void <init>() ,public abstract void accept(org.commonmark.node.Visitor) ,public void addSourceSpan(org.commonmark.node.SourceSpan) ,public void appendChild(org.commonmark.node.Node) ,public org.commonmark.node.Node getFirstChild() ,public org.commonmark.node.Node getLastChild() ,public org.commonmark.node.Node getNext() ,public org.commonmark.node.Node getParent() ,public org.commonmark.node.Node getPrevious() ,public List<org.commonmark.node.SourceSpan> getSourceSpans() ,public void insertAfter(org.commonmark.node.Node) ,public void insertBefore(org.commonmark.node.Node) ,public void prependChild(org.commonmark.node.Node) ,public void setSourceSpans(List<org.commonmark.node.SourceSpan>) ,public java.lang.String toString() ,public void unlink() <variables>private org.commonmark.node.Node firstChild,private org.commonmark.node.Node lastChild,private org.commonmark.node.Node next,private org.commonmark.node.Node parent,private org.commonmark.node.Node prev,private List<org.commonmark.node.SourceSpan> sourceSpans