Example #1
0
 private Choice(ChoiceCase @case, TCase1 case1, TCase2 case2, TCase3 case3)
 {
     Case   = @case;
     _case1 = case1;
     _case2 = case2;
     _case3 = case3;
 }
Example #2
0
        private static bool ChoiceHandler(YangStatement statement, IChoice partial)
        {
            switch (statement.Keyword)
            {
            case "leaf":
            case "leaf-list":
            case "container":
            case "list":
            case "anydata":
            case "anyxml":
            case "case":
                if (partial.Cases == null)
                {
                    partial.Cases = new List <IChoiceCase>();
                }

                var choiceCase = new ChoiceCase(statement.Argument);

                if (statement.Keyword == "case")
                {
                    ParseStatement(statement, ChoiceCaseHandlers, choiceCase);
                }
                else
                {
                    // Any top level props automagically map to a case with the same name
                    ParentScopeHandler(statement, choiceCase);
                    DefinitionScopeHandler(statement, choiceCase);
                }

                partial.Cases.Add(choiceCase);
                return(true);

            case "default":
                partial.Default = statement.Argument;
                return(true);

            default:
                return(false);
            }
        }