[Ltk] Make use of AttachmentsElement
diff --git a/ltk/org.eclipse.statet.ltk.core/META-INF/MANIFEST.MF b/ltk/org.eclipse.statet.ltk.core/META-INF/MANIFEST.MF
index d586be0..36f0e01 100644
--- a/ltk/org.eclipse.statet.ltk.core/META-INF/MANIFEST.MF
+++ b/ltk/org.eclipse.statet.ltk.core/META-INF/MANIFEST.MF
@@ -23,6 +23,7 @@
  org.eclipse.statet.ecommons.io,
  org.eclipse.statet.jcommons.collections;version="4.5.0",
  org.eclipse.statet.jcommons.lang;version="4.5.0",
+ org.eclipse.statet.jcommons.model.core;version="4.5.0",
  org.eclipse.statet.jcommons.status;version="4.5.0",
  org.eclipse.statet.jcommons.status.eplatform;version="4.5.0",
  org.eclipse.statet.jcommons.string;version="4.5.0",
diff --git a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/ast/core/AstNode.java b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/ast/core/AstNode.java
index 65cf14c..ef116a8 100644
--- a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/ast/core/AstNode.java
+++ b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/ast/core/AstNode.java
@@ -16,9 +16,9 @@
 
 import java.lang.reflect.InvocationTargetException;
 
-import org.eclipse.statet.jcommons.collections.ImList;
 import org.eclipse.statet.jcommons.lang.NonNullByDefault;
 import org.eclipse.statet.jcommons.lang.Nullable;
+import org.eclipse.statet.jcommons.model.core.AttachmentsElement;
 import org.eclipse.statet.jcommons.text.core.TextRegion;
 
 
@@ -28,7 +28,7 @@
  * The interface must be implemented by the language specific AST classes.</p>
  */
 @NonNullByDefault
-public interface AstNode extends TextRegion {
+public interface AstNode extends TextRegion, AttachmentsElement {
 	
 	
 	int NA_OFFSET= Integer.MIN_VALUE;
@@ -87,9 +87,4 @@
 	AstNode getChild(final int index);
 	int getChildIndex(final AstNode child);
 	
-	
-	void addAttachment(final Object data);
-	void removeAttachment(final Object data);
-	ImList<Object> getAttachments();
-	
 }
diff --git a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/model/core/element/SourceUnitModelInfo.java b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/model/core/element/SourceUnitModelInfo.java
index 3a33359..fb2fe35 100644
--- a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/model/core/element/SourceUnitModelInfo.java
+++ b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/model/core/element/SourceUnitModelInfo.java
@@ -14,8 +14,8 @@
 
 package org.eclipse.statet.ltk.model.core.element;
 
-import org.eclipse.statet.jcommons.collections.ImList;
 import org.eclipse.statet.jcommons.lang.NonNullByDefault;
+import org.eclipse.statet.jcommons.model.core.AttachmentsElement;
 
 import org.eclipse.statet.ltk.ast.core.AstInfo;
 import org.eclipse.statet.ltk.core.source.SourceModelStamp;
@@ -25,7 +25,7 @@
  * Container for model information of an source unit
  */
 @NonNullByDefault
-public interface SourceUnitModelInfo {
+public interface SourceUnitModelInfo extends AttachmentsElement {
 	
 	
 	/**
@@ -49,8 +49,4 @@
 	 */
 	SourceStructElement<?, ?> getSourceElement();
 	
-	void addAttachment(final Object data);
-	void removeAttachment(final Object data);
-	ImList<Object> getAttachments();
-	
 }