Exemple #1
0
 public static UnifiedCase CreateDefault(
     UnifiedBlock body = null)
 {
     return(new UnifiedCase {
         Body = body,
     });
 }
Exemple #2
0
 public static UnifiedUncheckedBlock Create(
     UnifiedBlock body = null)
 {
     return(new UnifiedUncheckedBlock {
         Body = body,
     });
 }
Exemple #3
0
 public static UnifiedIf Create(
     UnifiedExpression condition, UnifiedBlock body)
 {
     return(new UnifiedIf {
         Body = body,
         Condition = condition,
     });
 }
 public static UnifiedBlock ToBlock(this UnifiedExpression singleton)
 {
     if (singleton == null)
     {
         return(UnifiedBlock.Create());
     }
     return(UnifiedBlock.Create(singleton));
 }
Exemple #5
0
 public static UnifiedFix Create(
     UnifiedExpression value = null,
     UnifiedBlock body       = null)
 {
     return(new UnifiedFix {
         Value = value,
         Body = body,
     });
 }
Exemple #6
0
 public static UnifiedProc Create(
     UnifiedSet <UnifiedParameter> parameters = null,
     UnifiedBlock body = null)
 {
     return(new UnifiedProc {
         Parameters = parameters,
         Body = body,
     });
 }
 public static UnifiedProgram ToProgram(
     this UnifiedExpression singleton)
 {
     if (singleton == null)
     {
         return(UnifiedProgram.Create(UnifiedBlock.Create()));
     }
     return(UnifiedProgram.Create(singleton.ToBlock()));
 }
Exemple #8
0
 public static UnifiedSynchronized Create(
     UnifiedExpression value = null,
     UnifiedBlock body       = null)
 {
     return(new UnifiedSynchronized {
         Value = value,
         Body = body,
     });
 }
Exemple #9
0
 public static UnifiedCountedLoop Create(
     UnifiedExpression count,
     UnifiedBlock body)
 {
     return(new UnifiedCountedLoop {
         Count = count,
         Body = body
     });
 }
Exemple #10
0
 public static UnifiedUsing Create(
     UnifiedSet <UnifiedExpression> expressions = null,
     UnifiedBlock body = null)
 {
     return(new UnifiedUsing {
         Expressions = expressions,
         Body = body,
     });
 }
Exemple #11
0
 public static UnifiedCase Create(
     UnifiedExpression condtion = null,
     UnifiedBlock body          = null)
 {
     return(new UnifiedCase {
         Body = body,
         Condition = condtion,
     });
 }
Exemple #12
0
 public static UnifiedProgram Create(
     UnifiedBlock body, UnifiedComment magicComments = null,
     UnifiedSet <UnifiedComment> comments            = null)
 {
     return(new UnifiedProgram {
         Body = body,
         MagicComment = magicComments,
         Comments = comments,
     });
 }
Exemple #13
0
 public static UnifiedDoWhile Create(
     UnifiedExpression condition = null, UnifiedBlock body = null,
     UnifiedBlock falseBody      = null)
 {
     return(new UnifiedDoWhile {
         Body = body,
         Condition = condition,
         FalseBody = falseBody,
     });
 }
Exemple #14
0
 public static UnifiedPropertyDefinitionPart Create(
     UnifiedSet <UnifiedAnnotation> annotations = null,
     UnifiedSet <UnifiedModifier> modifiers     = null,
     UnifiedBlock body = null)
 {
     return(new UnifiedPropertyDefinitionPart {
         Annotations = annotations,
         Modifiers = modifiers,
         Body = body,
     });
 }
Exemple #15
0
 public static UnifiedLambda Create(
     UnifiedIdentifier name = null,
     UnifiedSet <UnifiedParameter> parameters = null,
     UnifiedBlock body = null)
 {
     return(new UnifiedLambda {
         Name = name,
         Parameters = parameters,
         Body = body,
     });
 }
Exemple #16
0
 public static UnifiedWhile Create(
     UnifiedExpression condition = null,
     UnifiedBlock body           = null,
     UnifiedBlock elseBody       = null)
 {
     return(new UnifiedWhile {
         Condition = condition,
         Body = body,
         ElseBody = elseBody,
     });
 }
Exemple #17
0
 public static UnifiedDestructor Create(
     UnifiedSet <UnifiedAnnotation> annotations = null,
     UnifiedSet <UnifiedModifier> modifiers     = null,
     UnifiedBlock body = null)
 {
     return(new UnifiedDestructor {
         Annotations = annotations,
         Modifiers = modifiers,
         Body = body,
     });
 }
Exemple #18
0
 public static UnifiedForeach Create(
     UnifiedExpression element, UnifiedExpression set,
     UnifiedBlock body,
     UnifiedBlock elseBody)
 {
     return(new UnifiedForeach {
         Element = element,
         Set = set,
         Body = body,
         ElseBody = elseBody,
     });
 }
Exemple #19
0
 public static UnifiedFor Create(
     UnifiedExpression initializer = null,
     UnifiedExpression condition   = null,
     UnifiedExpression step        = null,
     UnifiedBlock body             = null)
 {
     return(new UnifiedFor {
         Initializer = initializer,
         Condition = condition,
         Step = step,
         Body = body,
     });
 }
Exemple #20
0
 public static UnifiedTry Create(
     UnifiedBlock body = null,
     UnifiedSet <UnifiedCatch> catches = null,
     UnifiedBlock elseBody             = null,
     UnifiedBlock finallyBody          = null)
 {
     return(new UnifiedTry {
         Body = body,
         Catches = catches,
         ElseBody = elseBody,
         FinallyBody = finallyBody,
     });
 }
Exemple #21
0
 public static UnifiedCatch Create(
     UnifiedSet <UnifiedType> types,
     UnifiedExpression assign,
     UnifiedBlock body = null,
     UnifiedSet <UnifiedAnnotation> annotations = null,
     UnifiedSet <UnifiedModifier> modifiers     = null)
 {
     return(new UnifiedCatch {
         Annotations = annotations,
         Modifiers = modifiers,
         Types = types,
         Assign = assign,
         Body = body,
     });
 }
Exemple #22
0
 public static UnifiedNew Create(
     UnifiedExpression target = null,
     UnifiedSet <UnifiedArgument> arguments = null,
     UnifiedSet <UnifiedGenericArgument> genericArguments = null,
     UnifiedArrayLiteral initialValues = null,
     UnifiedBlock body = null)
 {
     return(new UnifiedNew {
         Target = target,
         Arguments = arguments,
         GenericArguments = genericArguments,
         InitialValue = initialValues,
         Body = body,
     });
 }
Exemple #23
0
        public static TSelf Create(
            UnifiedBlock body = null,
            UnifiedSet <UnifiedAnnotation> annotations             = null,
            UnifiedSet <UnifiedModifier> modifiers                 = null,
            UnifiedSet <UnifiedParameter> parameters               = null,
            UnifiedSet <UnifiedGenericParameter> genericParameters = null,
            UnifiedSet <UnifiedType> throws = null)
        {
            var ret = UnifiedFactory <TSelf> .Create();

            ret.Body              = body;
            ret.Annotations       = annotations;
            ret.Modifiers         = modifiers;
            ret.Parameters        = parameters;
            ret.GenericParameters = genericParameters;
            ret.Throws            = throws;
            return(ret);
        }
Exemple #24
0
        public static T Create(
            UnifiedSet <UnifiedAnnotation> annotations = null,
            UnifiedSet <UnifiedModifier> modifiers     = null,
            UnifiedExpression name = null,
            UnifiedSet <UnifiedGenericParameter> genericParameters = null,
            UnifiedSet <UnifiedTypeConstrain> constrains           = null,
            UnifiedBlock body = null)
        {
            var ret = UnifiedFactory <T> .Create();

            ret.Annotations       = annotations;
            ret.Modifiers         = modifiers;
            ret.Name              = name;
            ret.GenericParameters = genericParameters;
            ret.Constrains        = constrains;
            ret.Body              = body;
            return(ret);
        }
Exemple #25
0
        /// <summary>
        ///   一個以上のelse if節によって構成されているif-else式に分解してモデルを構築します.
        /// </summary>
        /// <param name="conditionAndBodies"> </param>
        /// <param name="lastElseBody"> </param>
        /// <returns> </returns>
        public static UnifiedIf Create(
            IEnumerable <Tuple <UnifiedExpression, UnifiedBlock> >
            conditionAndBodies,
            UnifiedBlock lastElseBody)
        {
            var ifs = conditionAndBodies
                      .Select(t => Create(t.Item1, t.Item2))
                      .ToList();

            for (int i = 1; i < ifs.Count; i++)
            {
                ifs[i - 1].ElseBody = ifs[i].ToBlock();
            }
            if (lastElseBody != null)
            {
                ifs[ifs.Count - 1].ElseBody = lastElseBody;
            }
            return(ifs[0]);
        }
Exemple #26
0
 public static UnifiedVariableDefinition Create(
     UnifiedSet <UnifiedAnnotation> annotations = null,
     UnifiedSet <UnifiedModifier> modifiers     = null,
     UnifiedType type                       = null,
     UnifiedIdentifier name                 = null,
     UnifiedExpression initialValue         = null,
     UnifiedSet <UnifiedArgument> arguments = null,
     UnifiedIntegerLiteral bitField         = null,
     UnifiedBlock body                      = null)
 {
     return(new UnifiedVariableDefinition {
         Annotations = annotations,
         Arguments = arguments,
         BitField = bitField,
         Body = body,
         InitialValue = initialValue,
         Modifiers = modifiers,
         Name = name,
         Type = type,
     });
 }
Exemple #27
0
 public static UnifiedFunctionDefinition Create(
     UnifiedSet <UnifiedAnnotation> annotations = null,
     UnifiedSet <UnifiedModifier> modifiers     = null,
     UnifiedType type = null,
     UnifiedSet <UnifiedGenericParameter> genericParameters = null,
     UnifiedIdentifier name = null,
     UnifiedSet <UnifiedParameter> parameters = null,
     UnifiedSet <UnifiedType> throws          = null,
     UnifiedBlock body = null,
     UnifiedExpression annotationExpression = null)
 {
     return(new UnifiedFunctionDefinition {
         Name = name,
         Annotations = annotations,
         Type = type,
         GenericParameters = genericParameters,
         Modifiers = modifiers,
         Parameters = parameters,
         Throws = throws,
         Body = body,
         AnnotationExpression = annotationExpression,
     });
 }
Exemple #28
0
 public static UnifiedIf Create(UnifiedBlock body)
 {
     return(new UnifiedIf {
         Body = body,
     });
 }
Exemple #29
0
 public UnifiedIf RemoveFalseBody()
 {
     ElseBody = null;
     return(this);
 }
 public static UnifiedBlock ToBlock(
     this IEnumerable <UnifiedExpression> expressions)
 {
     return(UnifiedBlock.Create(expressions));
 }