예제 #1
0
 public static SCode Make(PrimitiveCombination2A0 predicate, SCode consequent, SCode alternative)
 {
     return
         (predicate is PrimitiveCombination2A0L) ? PCond2A0L.Make ((PrimitiveCombination2A0L) predicate, consequent, alternative) :
         (predicate is PrimitiveCombination2A0Q) ? PCond2A0Q.Make ((PrimitiveCombination2A0Q) predicate, consequent, alternative) :
         (consequent is LexicalVariable) ? PCond2A0SL.Make (predicate, (LexicalVariable) consequent, alternative) :
         (consequent is Quotation) ? PCond2A0SQ.Make (predicate, (Quotation) consequent, alternative) :
         (alternative is LexicalVariable) ? PCond2A0SSL.Make (predicate, consequent, (LexicalVariable) alternative) :
         (alternative is Quotation) ? PCond2A0SSQ.Make (predicate, consequent, (Quotation) alternative) :
         new PCond2A0 (predicate, consequent, alternative);
 }
예제 #2
0
 public static SCode Make(PrimitiveCombination2A0 predicate, SCode consequent, Argument alternative)
 {
     return
         (alternative is Argument0) ? PCond2A0SSA0.Make (predicate, consequent, (Argument0) alternative)
         : (alternative is Argument1) ? PCond2A0SSA1.Make (predicate, consequent, (Argument1) alternative)
         : new PCond2A0SSA (predicate, consequent, alternative);
 }
예제 #3
0
 public static SCode Make(PrimitiveCombination2A0 predicate, Quotation consequent, Argument1 alternative)
 {
     return
         new PCond2A0SQA1 (predicate, consequent, alternative);
 }
예제 #4
0
 // (a0 s q a1)
 PCond2A0SQA1(PrimitiveCombination2A0 predicate, Quotation consequent, Argument1 alternative)
     : base(predicate, consequent, alternative)
 {
 }
예제 #5
0
 // (a0 s a0 s)
 protected PCond2A0SA0(PrimitiveCombination2A0 predicate, Argument0 consequent, SCode alternative)
     : base(predicate, consequent, alternative)
 {
 }
예제 #6
0
 public static SCode Make(PrimitiveCombination2A0 predicate, SCode consequent, Quotation alternative)
 {
     return
         new PCond2A0SSQ (predicate, consequent, alternative);
 }
예제 #7
0
 public static SCode Make(PrimitiveCombination2A0 predicate, SCode consequent, LexicalVariable1 alternative)
 {
     return
         new PCond2A0SSL1 (predicate, consequent, alternative);
 }
예제 #8
0
 public static SCode Make(PrimitiveCombination2A0 predicate, SCode consequent, LexicalVariable alternative)
 {
     return
         (alternative is Argument) ? PCond2A0SSA.Make (predicate, consequent, (Argument) alternative)
         : (alternative is LexicalVariable1) ? PCond2A0SSL1.Make (predicate, consequent, (LexicalVariable1) alternative)
         : new PCond2A0SSL (predicate, consequent, alternative);
 }
예제 #9
0
 public static SCode Make(PrimitiveCombination2A0 predicate, LexicalVariable consequent, Argument0 alternative)
 {
     return
         new PCond2A0SLA0 (predicate, consequent, alternative);
 }
예제 #10
0
 // (a0 s l1 a)
 protected PCond2A0SL1A(PrimitiveCombination2A0 predicate, LexicalVariable1 consequent, Argument alternative)
     : base(predicate, consequent, alternative)
 {
 }
예제 #11
0
 public static SCode Make(PrimitiveCombination2A0 predicate, LexicalVariable consequent, SCode alternative)
 {
     return
         (consequent is Argument) ? PCond2A0SA.Make (predicate, (Argument) consequent, alternative)
         : (consequent is LexicalVariable1) ? PCond2A0SL1.Make (predicate, (LexicalVariable1) consequent, alternative)
         : (alternative is LexicalVariable) ? PCond2A0SLL.Make (predicate, consequent, (LexicalVariable) alternative)
         : (alternative is Quotation) ? PCond2A0SLQ.Make (predicate, consequent, (Quotation) alternative)
         : new PCond2A0SL (predicate, consequent, alternative);
 }
예제 #12
0
 protected PCond2A0SL(PrimitiveCombination2A0 predicate, LexicalVariable consequent, SCode alternative)
     : base(predicate, consequent, alternative)
 {
     this.consequentName = consequent.Name;
     this.consequentDepth = consequent.Depth;
     this.consequentOffset = consequent.Offset;
 }
예제 #13
0
 // (a0 s a a0)
 PCond2A0SAA0(PrimitiveCombination2A0 predicate, Argument consequent, Argument0 alternative)
     : base(predicate, consequent, alternative)
 {
 }
예제 #14
0
 public static SCode Make(PrimitiveCombination2A0 predicate, Argument1 consequent, Argument0 alternative)
 {
     return
         new PCond2A0SA1A0 (predicate, consequent, alternative);
 }
예제 #15
0
 // (a0 s a1 a)
 protected PCond2A0SA1A(PrimitiveCombination2A0 predicate, Argument1 consequent, Argument alternative)
     : base(predicate, consequent, alternative)
 {
 }
예제 #16
0
 // (a0 s s a1)
 PCond2A0SSA1(PrimitiveCombination2A0 predicate, SCode consequent, Argument1 alternative)
     : base(predicate, consequent, alternative)
 {
 }
예제 #17
0
 protected PCond2A0SSL(PrimitiveCombination2A0 predicate, SCode consequent, LexicalVariable alternative)
     : base(predicate, consequent, alternative)
 {
     this.alternativeName = alternative.Name;
     this.alternativeDepth = alternative.Depth;
     this.alternativeOffset = alternative.Offset;
 }
예제 #18
0
 // (a0 s l a1)
 PCond2A0SLA1(PrimitiveCombination2A0 predicate, LexicalVariable consequent, Argument1 alternative)
     : base(predicate, consequent, alternative)
 {
 }
예제 #19
0
 // (a0 s s l1)
 PCond2A0SSL1(PrimitiveCombination2A0 predicate, SCode consequent, LexicalVariable1 alternative)
     : base(predicate, consequent, alternative)
 {
 }
예제 #20
0
 PCond2A0SLQ(PrimitiveCombination2A0 predicate, LexicalVariable consequent, Quotation alternative)
     : base(predicate, consequent, alternative)
 {
     this.alternativeValue = alternative.Quoted;
 }
예제 #21
0
 PCond2A0SSQ(PrimitiveCombination2A0 predicate, SCode consequent, Quotation alternative)
     : base(predicate, consequent, alternative)
 {
     this.alternativeValue = alternative.Quoted;
 }
예제 #22
0
 protected PCond2A0SQ(PrimitiveCombination2A0 predicate, Quotation consequent, SCode alternative)
     : base(predicate, consequent, alternative)
 {
     this.consequentValue = consequent.Quoted;
 }
예제 #23
0
 public static SCode Make(PrimitiveCombination2A0 predicate, Quotation consequent, SCode alternative)
 {
     return
         (alternative is LexicalVariable) ? PCond2A0SQL.Make (predicate, consequent, (LexicalVariable) alternative)
         : (alternative is Quotation) ? PCond2A0SQQ.Make (predicate, consequent, (Quotation) alternative)
         : new PCond2A0SQ (predicate, consequent, alternative);
 }
예제 #24
0
 public static SCode Make(PrimitiveCombination2A0 predicate, Argument consequent, SCode alternative)
 {
     return
         (consequent is Argument0) ? PCond2A0SA0.Make (predicate, (Argument0) consequent, alternative)
         : (consequent is Argument1) ? PCond2A0SA1.Make (predicate, (Argument1) consequent, alternative)
         : (alternative is LexicalVariable) ? PCond2A0SAL.Make (predicate, consequent, (LexicalVariable) alternative)
         : (alternative is Quotation) ? PCond2A0SAQ.Make (predicate, consequent, (Quotation) alternative)
         : new PCond2A0SA (predicate, consequent, alternative);
 }