
org.jnario.feature.jvmmodel.StepContextProvider.xtend Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of org.jnario.standalone Show documentation
Show all versions of org.jnario.standalone Show documentation
The required libraries to execute Jnario specifications without Eclipse.
The newest version!
package org.jnario.feature.jvmmodel
import com.google.inject.Inject
import org.eclipse.xtend.core.xtend.XtendField
import org.eclipse.xtext.common.types.JvmField
import org.eclipse.xtext.xbase.jvmmodel.IJvmModelAssociations
import org.eclipse.xtext.xbase.util.XbaseUsageCrossReferencer
import org.jnario.feature.feature.Step
class StepContextProvider {
@Inject extension StepExpressionProvider
@Inject extension IJvmModelAssociations
@Inject extension VisibleMembersCalculator
def usedFields(Step step){
val expr = expressionOf(step)
step.allVisibleMembers.filter(typeof(XtendField)).filter[
val field = it.jvmElements.filter(typeof(JvmField)).iterator.next
val usages = XbaseUsageCrossReferencer::find(field, newArrayList(expr))
!usages.empty
].toSet
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy