Bug 289116 - The JSDI interfaces need to be documented
diff --git a/bundles/org.eclipse.e4.languages.javascript.debug.jsdi/src/org/eclipse/e4/languages/javascript/jsdi/ScriptReference.java b/bundles/org.eclipse.e4.languages.javascript.debug.jsdi/src/org/eclipse/e4/languages/javascript/jsdi/ScriptReference.java
index 2cd77c1..d0d0f6e 100644
--- a/bundles/org.eclipse.e4.languages.javascript.debug.jsdi/src/org/eclipse/e4/languages/javascript/jsdi/ScriptReference.java
+++ b/bundles/org.eclipse.e4.languages.javascript.debug.jsdi/src/org/eclipse/e4/languages/javascript/jsdi/ScriptReference.java
@@ -3,19 +3,83 @@
import java.util.List;
import java.util.Map;
+/**
+ * Describes a JavaScript script object. A script object has location information for all of the lines and functions contained within it.
+ *
+ * @since 0.9
+ */
public interface ScriptReference extends Mirror {
- public List allLineLocations();
+ /**
+ * Returns the complete live list of line locations in this script. <br>
+ * <br>
+ * This method can return <code>null</code>.
+ *
+ * @return the line locations in this script
+ * @see Location
+ * @see #lineLocation(int)
+ */
+ public List/* <Location> */allLineLocations();
+ /**
+ * Returns the {@link Location} information for the given line number in this script.<br>
+ * <br>
+ * This method can return <code>null</code>.
+ *
+ * @param lineNumber
+ * @return the {@link Location} information for the given line number.
+ * @see Location
+ * @see #allLineLocations()
+ */
public Location lineLocation(int lineNumber);
- public List allFunctionLocations();
+ /**
+ * Returns the complete live list of function locations in this script.<br>
+ * <br>
+ * This method can return <code>null</code>.
+ *
+ * @return the function locations in this script
+ * @see Location
+ * @see #functionLocation(String)
+ */
+ public List/* <Location> */allFunctionLocations();
+ /**
+ * Returns the {@link Location} information for a function with the given name in this script.<br>
+ * <br>
+ * This method can return <code>null</code>.
+ *
+ * @param functionName
+ * @return the {@link Location} information for a function with the given name
+ * @see Location
+ * @see #allFunctionLocations()
+ */
public Location functionLocation(String functionName);
+ /**
+ * Returns the entire known source for this script at the time this method is called.<br>
+ * <br>
+ * This method can return <code>null</code>.
+ *
+ * @return the source for this script
+ */
public String source();
+ /**
+ * Returns the path to the source of this script.<br>
+ * <br>
+ * This method can return <code>null</code>.
+ *
+ * @return the path to the source of this script
+ */
public String sourcePath();
+ /**
+ * Returns a mapping of additional properties describing the source for this script.<br>
+ * <br>
+ * This method can return <code>null</code>.
+ *
+ * @return a mapping of additional source properties for this script
+ */
public Map sourceProperties();
}