<s> package org . eclipse . jdt . core . dom ; public final class ChildPropertyDescriptor extends StructuralPropertyDescriptor { private final Class childClass ; private final boolean mandatory ; final boolean cycleRisk ; ChildPropertyDescriptor ( Class nodeClass , String propertyId , Class childType , boolean mandatory , boolean cycleRisk ) { super ( nodeClass , propertyId ) ; if ( childType == null || ! ASTNode . class . isAssignableFrom ( childType ) ) { throw new IllegalArgumentException ( ) ; } this . childClass = childType ; this . mandatory = mandatory ; this . cycleRisk = cycleRisk ; } public final Class getChildType ( ) { return this . childClass ; } public final boolean isMandatory ( ) { return this . mandatory ; } public final boolean cycleRisk ( ) { return this . cycleRisk ; } } </s>