예제 #1
0
 public static SCode Make(PrimitiveCombination2Q predicate, SCode consequent, SCode alternative)
 {
     return
         (predicate is PrimitiveCombination2QL) ? PCond2QL.Make ((PrimitiveCombination2QL) predicate, consequent, alternative) :
         (predicate is PrimitiveCombination2QQ) ? PCond2QQ.Make ((PrimitiveCombination2QQ) predicate, consequent, alternative) :
         (consequent is LexicalVariable) ? PCond2QSL.Make (predicate, (LexicalVariable) consequent, alternative) :
         (consequent is Quotation) ? PCond2QSQ.Make (predicate, (Quotation) consequent, alternative) :
         (alternative is LexicalVariable) ? PCond2QSSL.Make (predicate, consequent, (LexicalVariable) alternative) :
         (alternative is Quotation) ? PCond2QSSQ.Make (predicate, consequent, (Quotation) alternative) :
         new PCond2Q (predicate, consequent, alternative);
 }
예제 #2
0
 // (q s q a1)
 PCond2QSQA1(PrimitiveCombination2Q predicate, Quotation consequent, Argument1 alternative)
     : base(predicate, consequent, alternative)
 {
 }
예제 #3
0
 public static SCode Make(PrimitiveCombination2Q predicate, Quotation consequent, SCode alternative)
 {
     return
         (alternative is LexicalVariable) ? PCond2QSQL.Make (predicate, consequent, (LexicalVariable) alternative)
         : (alternative is Quotation) ? PCond2QSQQ.Make (predicate, consequent, (Quotation) alternative)
         : new PCond2QSQ (predicate, consequent, alternative);
 }
예제 #4
0
 // (q s a0 s)
 protected PCond2QSA0(PrimitiveCombination2Q predicate, Argument0 consequent, SCode alternative)
     : base(predicate, consequent, alternative)
 {
 }
예제 #5
0
 public static SCode Make(PrimitiveCombination2Q predicate, SCode consequent, Quotation alternative)
 {
     return
         new PCond2QSSQ (predicate, consequent, alternative);
 }
예제 #6
0
 public static SCode Make(PrimitiveCombination2Q predicate, SCode consequent, LexicalVariable1 alternative)
 {
     return
         new PCond2QSSL1 (predicate, consequent, alternative);
 }
예제 #7
0
 public static SCode Make(PrimitiveCombination2Q predicate, SCode consequent, LexicalVariable alternative)
 {
     return
         (alternative is Argument) ? PCond2QSSA.Make (predicate, consequent, (Argument) alternative)
         : (alternative is LexicalVariable1) ? PCond2QSSL1.Make (predicate, consequent, (LexicalVariable1) alternative)
         : new PCond2QSSL (predicate, consequent, alternative);
 }
예제 #8
0
 // (q s s a1)
 PCond2QSSA1(PrimitiveCombination2Q predicate, SCode consequent, Argument1 alternative)
     : base(predicate, consequent, alternative)
 {
 }
예제 #9
0
 // (q s l1 a)
 protected PCond2QSL1A(PrimitiveCombination2Q predicate, LexicalVariable1 consequent, Argument alternative)
     : base(predicate, consequent, alternative)
 {
 }
예제 #10
0
 public static SCode Make(PrimitiveCombination2Q predicate, LexicalVariable consequent, SCode alternative)
 {
     return
         (consequent is Argument) ? PCond2QSA.Make (predicate, (Argument) consequent, alternative)
         : (consequent is LexicalVariable1) ? PCond2QSL1.Make (predicate, (LexicalVariable1) consequent, alternative)
         : (alternative is LexicalVariable) ? PCond2QSLL.Make (predicate, consequent, (LexicalVariable) alternative)
         : (alternative is Quotation) ? PCond2QSLQ.Make (predicate, consequent, (Quotation) alternative)
         : new PCond2QSL (predicate, consequent, alternative);
 }
예제 #11
0
 protected PCond2QSL(PrimitiveCombination2Q predicate, LexicalVariable consequent, SCode alternative)
     : base(predicate, consequent, alternative)
 {
     this.consequentName = consequent.Name;
     this.consequentDepth = consequent.Depth;
     this.consequentOffset = consequent.Offset;
 }
예제 #12
0
 // (q s a a0)
 PCond2QSAA0(PrimitiveCombination2Q predicate, Argument consequent, Argument0 alternative)
     : base(predicate, consequent, alternative)
 {
 }
예제 #13
0
 public static SCode Make(PrimitiveCombination2Q predicate, Argument1 consequent, Argument0 alternative)
 {
     return
         new PCond2QSA1A0 (predicate, consequent, alternative);
 }
예제 #14
0
 // (q s a1 a)
 protected PCond2QSA1A(PrimitiveCombination2Q predicate, Argument1 consequent, Argument alternative)
     : base(predicate, consequent, alternative)
 {
 }
예제 #15
0
 // (q s a0 l1)
 PCond2QSA0L1(PrimitiveCombination2Q predicate, Argument0 consequent, LexicalVariable1 alternative)
     : base(predicate, consequent, alternative)
 {
 }
예제 #16
0
 public static SCode Make(PrimitiveCombination2Q predicate, Quotation consequent, Argument1 alternative)
 {
     return
         new PCond2QSQA1 (predicate, consequent, alternative);
 }
예제 #17
0
 public static SCode Make(PrimitiveCombination2Q predicate, SCode consequent, Argument alternative)
 {
     return
         (alternative is Argument0) ? PCond2QSSA0.Make (predicate, consequent, (Argument0) alternative)
         : (alternative is Argument1) ? PCond2QSSA1.Make (predicate, consequent, (Argument1) alternative)
         : new PCond2QSSA (predicate, consequent, alternative);
 }
예제 #18
0
 protected PCond2Q(PrimitiveCombination2Q predicate, SCode consequent, SCode alternative)
     : base(predicate, consequent, alternative)
 {
     this.rand0Value = predicate.rand0Value;
 }
예제 #19
0
 protected PCond2QSSL(PrimitiveCombination2Q predicate, SCode consequent, LexicalVariable alternative)
     : base(predicate, consequent, alternative)
 {
     this.alternativeName = alternative.Name;
     this.alternativeDepth = alternative.Depth;
     this.alternativeOffset = alternative.Offset;
 }
예제 #20
0
 public static SCode Make(PrimitiveCombination2Q predicate, LexicalVariable consequent, Argument0 alternative)
 {
     return
         new PCond2QSLA0 (predicate, consequent, alternative);
 }
예제 #21
0
 // (q s s l1)
 PCond2QSSL1(PrimitiveCombination2Q predicate, SCode consequent, LexicalVariable1 alternative)
     : base(predicate, consequent, alternative)
 {
 }
예제 #22
0
 // (q s l a1)
 PCond2QSLA1(PrimitiveCombination2Q predicate, LexicalVariable consequent, Argument1 alternative)
     : base(predicate, consequent, alternative)
 {
 }
예제 #23
0
 PCond2QSSQ(PrimitiveCombination2Q predicate, SCode consequent, Quotation alternative)
     : base(predicate, consequent, alternative)
 {
     this.alternativeValue = alternative.Quoted;
 }
예제 #24
0
 PCond2QSLQ(PrimitiveCombination2Q predicate, LexicalVariable consequent, Quotation alternative)
     : base(predicate, consequent, alternative)
 {
     this.alternativeValue = alternative.Quoted;
 }
예제 #25
0
 protected PCond2QSQ(PrimitiveCombination2Q predicate, Quotation consequent, SCode alternative)
     : base(predicate, consequent, alternative)
 {
     this.consequentValue = consequent.Quoted;
 }
예제 #26
0
 public static SCode Make(PrimitiveCombination2Q predicate, Argument consequent, SCode alternative)
 {
     return
         (consequent is Argument0) ? PCond2QSA0.Make (predicate, (Argument0) consequent, alternative)
         : (consequent is Argument1) ? PCond2QSA1.Make (predicate, (Argument1) consequent, alternative)
         : (alternative is LexicalVariable) ? PCond2QSAL.Make (predicate, consequent, (LexicalVariable) alternative)
         : (alternative is Quotation) ? PCond2QSAQ.Make (predicate, consequent, (Quotation) alternative)
         : new PCond2QSA (predicate, consequent, alternative);
 }