protected object StatementsBreakForLevel(StatementLevel level) { Whitespace (); ParseRule[] breakRules = _statementBreakRulesAtLevel[(int)level]; var breakRuleResult = OneOf (breakRules); if (breakRuleResult == null) return null; return breakRuleResult; }
protected object StatementsBreakForLevel(StatementLevel level) { Whitespace(); ParseRule[] breakRules = _statementBreakRulesAtLevel[(int)level]; var breakRuleResult = OneOf(breakRules); if (breakRuleResult == null) { return(null); } return(breakRuleResult); }
protected List<Parsed.Object> StatementsAtLevel(StatementLevel level) { // Check for error: Should not be allowed gather dashes within an inner block if (level == StatementLevel.InnerBlock) { object badGatherDashCount = Parse(GatherDashes); if (badGatherDashCount != null) { Error ("You can't use a gather (the dashes) within the { curly braces } context. For multi-line sequences and conditions, you should only use one dash."); } } return Interleave<Parsed.Object>( Optional (MultilineWhitespace), () => StatementAtLevel (level), untilTerminator: () => StatementsBreakForLevel(level)); }
protected object StatementAtLevel(StatementLevel level) { ParseRule[] rulesAtLevel = _statementRulesAtLevel[(int)level]; var statement = OneOf (rulesAtLevel); // For some statements, allow them to parse, but create errors, since // writers may think they can use the statement, so it's useful to have // the error message. if (level == StatementLevel.Top) { if( statement is Return ) Error ("should not have return statement outside of a knot"); } return statement; }
protected List <Parsed.Object> StatementsAtLevel(StatementLevel level) { // Check for error: Should not be allowed gather dashes within an inner block if (level == StatementLevel.InnerBlock) { object badGatherDashCount = Parse(GatherDashes); if (badGatherDashCount != null) { Error("You can't use a gather (the dashes) within the { curly braces } context. For multi-line sequences and conditions, you should only use one dash."); } } return(Interleave <Parsed.Object>( Optional(MultilineWhitespace), () => StatementAtLevel(level), untilTerminator: () => StatementsBreakForLevel(level))); }
protected object StatementAtLevel(StatementLevel level) { ParseRule[] rulesAtLevel = _statementRulesAtLevel[(int)level]; var statement = OneOf(rulesAtLevel); // For some statements, allow them to parse, but create errors, since // writers may think they can use the statement, so it's useful to have // the error message. if (level == StatementLevel.Top) { if (statement is Return) { Error("should not have return statement outside of a knot"); } } return(statement); }