public static SCode Make(Primitive2 rator, Argument rand0, SCode rand1)
 {
     return
         ((rand0 is Argument0) ? PrimitiveIsObjectEqA0.Make(rator, (Argument0)rand0, rand1)
         : (rand0 is Argument1) ? PrimitiveIsObjectEqA1.Make(rator, (Argument1)rand0, rand1)
         : (rand1 is LexicalVariable) ? Unimplemented()
         : (rand1 is Quotation) ? PrimitiveIsObjectEqAQ.Make(rator, rand0, (Quotation)rand1)
         : new PrimitiveIsObjectEqA(rator, rand0, rand1));
 }
 public static SCode Make(PrimitiveIsObjectEqA1 predicate, SCode consequent, SCode alternative)
 {
     return
         (predicate is PrimitiveIsObjectEqA1Q) ? PCondIsObjectEqA1Q.Make ((PrimitiveIsObjectEqA1Q) predicate, consequent, alternative) :
         new PCondIsObjectEqA1 (predicate, consequent, alternative);
 }
 protected PCondIsObjectEqA1(PrimitiveIsObjectEqA1 predicate, SCode consequent, SCode alternative)
     : base(predicate, consequent, alternative)
 {
 }