本文整理汇总了Java中org.eclipse.emf.common.util.AbstractTreeIterator类的典型用法代码示例。如果您正苦于以下问题:Java AbstractTreeIterator类的具体用法?Java AbstractTreeIterator怎么用?Java AbstractTreeIterator使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
AbstractTreeIterator类属于org.eclipse.emf.common.util包,在下文中一共展示了AbstractTreeIterator类的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: getAllNonDerivedContents
import org.eclipse.emf.common.util.AbstractTreeIterator; //导入依赖的package包/类
/**
* @since 2.6
*/
public static TreeIterator<EObject> getAllNonDerivedContents(EObject root, boolean includeRoot) {
/*
* We cannot simply use root.eAllContents here since the iterator
* will probe for #hasNext on each invocation of #next. This is usually
* not a problem but with derived containment, it becomes an issue.
* For example, the accessor of XAbstractFeatureCall#getImplicitReceiver uses #getFeature
* to initialize itself. This will cause the potential proxy feature
* to be resolved which in turn tries to access the mapped proxy URI fragments
* in the resource. Now these fragments are currently in the process of being
* updated, e.g. there may not even be enough entries. Thus #getFeature
* shall not be called here. Long story short, this iterator filters
* derived containment features.
*/
return new AbstractTreeIterator<EObject>(root, includeRoot) {
private static final long serialVersionUID = 1L;
@Override
public Iterator<EObject> getChildren(Object object) {
EObject eObject = (EObject) object;
return getNonDerivedContents(eObject);
}
};
}
开发者ID:eclipse,项目名称:xtext-core,代码行数:28,代码来源:EcoreUtil2.java
示例2: getAllContentsFiltered
import org.eclipse.emf.common.util.AbstractTreeIterator; //导入依赖的package包/类
/**
* Returns all content filtered by given predicate. Children of filtered elements are omitted as well. Filtered
* means that the element does not satisfy the predicate. The given object itself is neither added to the result nor
* is it tested against the predicate.
*
* @param eobj
* the root object, may be null
* @return the tree iterator, may be an empty iterator but never null
*/
public static TreeIterator<EObject> getAllContentsFiltered(EObject eobj, final Predicate<EObject> predicate) {
if (eobj == null) {
return emptyTreeIterator();
}
return new AbstractTreeIterator<EObject>(eobj, false) {
private static final long serialVersionUID = 1L;
@Override
public Iterator<EObject> getChildren(Object element) {
return Iterators.filter(((EObject) element).eContents().iterator(), predicate);
}
};
}
开发者ID:eclipse,项目名称:n4js,代码行数:23,代码来源:EcoreUtilN4.java
示例3: getAllDirectlyFoundContentsOfType
import org.eclipse.emf.common.util.AbstractTreeIterator; //导入依赖的package包/类
/**
* Returns all content of a given type, ignoring all elements which are not of the given type. This filters out also
* elements of the given type, if their container has a different type. The given object itself is neither added to
* the result nor is it tested against the predicate.
*
* @param eobj
* the root object, may be null
* @return the tree iterator, may be an empty iterator but never null
*/
@SuppressWarnings("unchecked")
public static <T> TreeIterator<T> getAllDirectlyFoundContentsOfType(EObject eobj, final Class<T> type) {
if (eobj == null) {
return emptyTreeIterator();
}
return (TreeIterator<T>) new AbstractTreeIterator<EObject>(eobj, false) {
private static final long serialVersionUID = 1L;
@Override
public Iterator<? extends EObject> getChildren(Object element) {
return (Iterator<? extends EObject>) Iterators.filter(((EObject) element).eContents().iterator(), type);
}
};
}
开发者ID:eclipse,项目名称:n4js,代码行数:24,代码来源:EcoreUtilN4.java
示例4: getAllLinkableContents
import org.eclipse.emf.common.util.AbstractTreeIterator; //导入依赖的package包/类
/**
* @since 2.7
*/
@SuppressWarnings("serial")
protected TreeIterator<EObject> getAllLinkableContents(EObject model) {
return new AbstractTreeIterator<EObject>(model) {
@Override
public Iterator<EObject> getChildren(Object object) {
return ((EObject) object).eContents().iterator();
}
};
}
开发者ID:eclipse,项目名称:xtext-core,代码行数:13,代码来源:AbstractCleaningLinker.java
示例5: getAllContents
import org.eclipse.emf.common.util.AbstractTreeIterator; //导入依赖的package包/类
public TreeIterator<EObject> getAllContents()
{
return
new AbstractTreeIterator<EObject>(this, false)
{
private static final long serialVersionUID = 1L;
@Override
public Iterator<EObject> getChildren(Object object)
{
return object == ResourceImpl.this ? ResourceImpl.this.getContents().iterator() : ((EObject)object).eContents().iterator();
}
};
}
开发者ID:LangleyStudios,项目名称:eclipse-avro,代码行数:15,代码来源:ResourceImpl.java
示例6: eAllContents
import org.eclipse.emf.common.util.AbstractTreeIterator; //导入依赖的package包/类
public TreeIterator<EObject> eAllContents()
{
return
new AbstractTreeIterator<EObject>(this, false)
{
private static final long serialVersionUID = 1L;
@Override
public Iterator<EObject> getChildren(Object object)
{
return ((EObject)object).eContents().iterator();
}
};
}
开发者ID:LangleyStudios,项目名称:eclipse-avro,代码行数:15,代码来源:BasicEObjectImpl.java
示例7: getAllNonFragmentingContentsIterator
import org.eclipse.emf.common.util.AbstractTreeIterator; //导入依赖的package包/类
public static TreeIterator<EObject> getAllNonFragmentingContentsIterator(EObject eObject) {
return new AbstractTreeIterator<EObject>(eObject) {
private static final long serialVersionUID = 1L;
@Override
protected Iterator<? extends EObject> getChildren(Object o) {
return prepareChildrenList((EObject)o).iterator();
}
};
}
开发者ID:markus1978,项目名称:emf-fragments,代码行数:11,代码来源:EMFFragUtil.java
注:本文中的org.eclipse.emf.common.util.AbstractTreeIterator类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论