/// <summary> /// Creates a group builder that builds a group as part of the current element. /// </summary> /// <param name="groupType">Group type.</param> /// <returns>Group builder.</returns> public GroupBuilder Group(GroupType groupType) { AssertSingleSource(); var sourceBuilder = new GroupBuilder(Scope, groupType); _sourceBuilder = sourceBuilder; return(sourceBuilder); }
/// <summary> /// Creates a builder for a forall element as part of the current element. /// </summary> /// <returns>Forall builder.</returns> public ForAllBuilder ForAll() { AssertSingleSource(); var sourceBuilder = new ForAllBuilder(Scope); _sourceBuilder = sourceBuilder; return(sourceBuilder); }
/// <summary> /// Creates a pattern builder that builds the source of the negative existential element. /// </summary> /// <param name="declaration">Pattern declaration.</param> /// <returns>Pattern builder.</returns> public PatternBuilder Pattern(Declaration declaration) { AssertSingleSource(); var sourceBuilder = new PatternBuilder(Scope, declaration); _sourceBuilder = sourceBuilder; return(sourceBuilder); }