/** * Copyright (c) 2013-2016 Angelo ZERR and Genuitec LLC. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Angelo Zerr <angelo.zerr@gmail.com> - initial API and implementation * Piotr Tomiak <piotr@genuitec.com> - Collectors API and code refactoring */ package tern.server.protocol.type; import tern.server.protocol.IJSONObjectHelper; import tern.server.protocol.ITernResultsCollector; /** * API to collect tern type. * */ public interface ITernTypeCollector extends ITernResultsCollector { /** * Collector called for "type" query tern server. * * @param type * A description of the type of the value. May be "?" when no * type was found. * @param guess * Whether the given type was guessed, or should be considered * reliable. * @param name * The name associated with the type. * @param exprName * When the inspected expression was an identifier or a property * access, this will hold the name of the variable or property. * @param doc * If the type had documentation and origin information * associated with it, these will also be returned. * @param url * If the type had documentation and origin information * associated with it, these will also be returned. * @param origin * If the type had documentation and origin information * associated with it, these will also be returned. * @param item * object of type (ex : JsonObject) * @param objectHelper * helper for extracting values of JSON objects. */ void setType(String type, boolean guess, String name, String exprName, String doc, String url, String origin, Object item, IJSONObjectHelper objectHelper); }