(FILECREATED " 6-Dec-85 16:25:08" {ERIS}<LISPUSERS>KOTO>RPC-EXAMPLECLIENT.;2 16322  

      changes to:  (FNS ImportRPC-Example MovdsForRPC-EXAMPLE ImportRPC-EXAMPLE UnimportRPC-EXAMPLE 
			DispatchRPC-EXAMPLESignals RPCClientStub.Simple RPCClientStub.Complex 
			RPCClientStub.ArgTestA RPCClientStub.ArgTestB MarshalRPC-EXAMPLERec5#0#96 
			MarshalRPC-EXAMPLERec6#0#48 MarshalRPC-EXAMPLERec2#0#128 
			MarshalRPC-EXAMPLERec1#0#80 MarshalRPC-EXAMPLERec4#0#48 
			MarshalRPC-EXAMPLERec3#1#15 MarshalRPC-EXAMPLERec3#0#16 MovdsForRPC-Example 
			UnimportRPC-Example DispatchRPC-ExampleSignals MarshalRPC-ExampleRec5#0#96 
			MarshalRPC-ExampleRec6#0#48 MarshalRPC-ExampleRec2#0#128 
			MarshalRPC-ExampleRec1#0#80 MarshalRPC-ExampleRec4#0#48 
			MarshalRPC-ExampleRec3#1#15 MarshalRPC-ExampleRec3#0#16)

      previous date: " 6-Dec-85 16:16:02" {ERIS}<LISPUSERS>KOTO>RPC-EXAMPLECLIENT.;1)


(* Copyright (c) 1985 by Xerox Corporation. All rights reserved.)

(PRETTYCOMPRINT RPC-EXAMPLECLIENTCOMS)

(RPAQQ RPC-EXAMPLECLIENTCOMS ((* Created by Lupine " 6-Dec-85 16:24:38")
	(FNS MovdsForRPC-Example ImportRPC-Example UnimportRPC-Example DispatchRPC-ExampleSignals 
	     RPCClientStub.Simple RPCClientStub.Complex RPCClientStub.ArgTestA RPCClientStub.ArgTestB 
	     MarshalRPC-ExampleRec5#0#96 MarshalRPC-ExampleRec6#0#48 MarshalRPC-ExampleRec2#0#128 
	     MarshalRPC-ExampleRec1#0#80 MarshalRPC-ExampleRec4#0#48 MarshalRPC-ExampleRec3#1#15 
	     MarshalRPC-ExampleRec3#0#16)
	(VARS (RPC-ExampleClientInterface))
	(GLOBALVARS RPC-ExampleClientInterface)
	(P (MovdsForRPC-Example))
	(DECLARE: DONTCOPY EVAL@COMPILE EVAL@LOAD (FILES (LOADCOMP)
							 RPC-EXAMPLE))
	(DECLARE: EVAL@LOAD DONTEVAL@COMPILE DOCOPY (FILES (SYSLOAD)
							   RPC))))



(* Created by Lupine " 6-Dec-85 16:24:38")

(DEFINEQ

(MovdsForRPC-Example
  [LAMBDA NIL                                                (* Lupine generated utility)
    (for p in (QUOTE ((RPCClientStub.ArgTestB . ArgTestB)
			     (RPCClientStub.ArgTestA . ArgTestA)
			     (RPCClientStub.Complex . Complex)
			     (RPCClientStub.Simple . Simple)))
       do (PUTD (CDR p)
		    (GETD (CAR p])

(ImportRPC-Example
  [LAMBDA (type instance version)                            (* Lupine generated interface)
    (CAR (push RPC-ExampleClientInterface (ImportInterface (OR type 
							      "RPC-Example 6-Dec-85 16:24:271540")
								 instance version])

(UnimportRPC-Example
  [LAMBDA (l..interface)                                     (* Lupine generated interface)
    (if l..interface then (if (FMEMB l..interface RPC-ExampleClientInterface) then
				  (UnimportInterface l..interface)
				  (SETQ RPC-ExampleClientInterface (DREMOVE l..interface 
								       RPC-ExampleClientInterface))
				  else
				  (ERROR "not imported" l..interface))
	  else
	  (for e in RPC-ExampleClientInterface do (UnimportInterface e))
	  (SETQ RPC-ExampleClientInterface NIL])

(DispatchRPC-ExampleSignals
  [LAMBDA (l..cPup l..conv)                                  (* Lupine generated dispatcher)
    (DECLARE (SPECVARS l..cPup l..conv))
    (SELECTQ (\GetArgWord l..cPup l..conv)
	       (4 (PROG (l..result)
		          (SETQ l..result (Signal (QUOTE SimpleFailed)
						      (\GetArgEnum l..cPup (QUOTE (badNum 
											badString))
								     l..conv)))
		          (\StartReturn l..cPup)))
	       (5 (PROG (l..result)
		          [SETQ l..result (Signal (QUOTE NooneFailed)
						      (create NooneArgs
								n2 ← (\GetArgSmallp l..cPup l..conv)
								n1 ← (\UnmarshalString l..cPup 
											 l..conv]
		          (\StartReturn l..cPup)
		          (\AddPupBoolean l..cPup l..result l..conv)))
	       [6 (PROG (l..result)
		          (SETQ l..result (Signal (QUOTE Fake)
						      NIL))
		          (\StartReturn l..cPup)
		          (\MarshalAtom l..cPup (fetch (FakeResult fr1) of l..result)
					  l..conv)
		          (MarshalRPC-ExampleRec1#0#80 l..cPup (fetch (FakeResult fr2)
								    of l..result)
							 l..conv)
		          (LET ((l..datum (fetch (FakeResult fr2) of l..result)))
			       (\MarshalString l..cPup (fetch (Rec1 f4) of l..datum)
						 l..conv)
			       (\MarshalAtom l..cPup (fetch (Rec1 f5) of l..datum)
					       l..conv]
	       (SHOULDNT))
    l..cPup])

(RPCClientStub.Simple
  [LAMBDA (first second l..interfaceArg l..conv)           (* Lupine generated stub)
    (PROG [l..cPup (l..interface (OR l..interfaceArg (CAR RPC-ExampleClientInterface]
	    (DECLARE (SPECVARS l..cPup))
	    (SETQ l..cPup (\StartCall (CAR l..interface)
					  (CDR l..interface)
					  l..conv))
	    (\AddPupWord l..cPup 4 l..conv)
	    (\AddPupDblWord l..cPup first l..conv)
	    (\MarshalString l..cPup second l..conv)
	    (SETQ l..cPup (\Call l..cPup (FUNCTION DispatchRPC-ExampleSignals)
				     l..conv))
	    (RETURN (PROG1 (\GetArgBool l..cPup l..conv)
			       (\RELEASE.PUP l..cPup])

(RPCClientStub.Complex
  [LAMBDA (r1 r2 r3 r4 r5 r5a r5b r6 r7 r8 r9 r10 l1 l2 l..interfaceArg l..conv)
                                                             (* Lupine generated stub)
    (PROG [l..cPup (l..interface (OR l..interfaceArg (CAR RPC-ExampleClientInterface]
	    (DECLARE (SPECVARS l..cPup))
	    (SETQ l..cPup (\StartCall (CAR l..interface)
					  (CDR l..interface)
					  l..conv))
	    (\AddPupWord l..cPup 5 l..conv)
	    (\AddPupBoolean l..cPup r1 l..conv)
	    (\AddPupBoolean l..cPup r2 l..conv)
	    (MarshalRPC-ExampleRec3#0#16 l..cPup r3 l..conv)
	    (MarshalRPC-ExampleRec4#0#48 l..cPup r4 l..conv)
	    (MarshalRPC-ExampleRec3#0#16 l..cPup r6 l..conv)
	    (\MarshalStream l..cPup (QUOTE ({NODIRCORE}))
			      r5 l..conv)
	    (if r5a then (\AddPupBoolean l..cPup NIL l..conv)
		  (MarshalRPC-ExampleRec3#0#16 l..cPup r5a l..conv) else (\AddPupBoolean l..cPup 
											     T 
											  l..conv))
	    (if r5b then (\AddPupBoolean l..cPup NIL l..conv)
		  (MarshalRPC-ExampleRec3#0#16 l..cPup r5b l..conv) else (\AddPupBoolean l..cPup 
											     T 
											  l..conv))
	    (\MarshalString l..cPup r7 l..conv)
	    (MarshalRPC-ExampleRec1#0#80 l..cPup r8 l..conv)
	    (LET ((l..datum r8))
	         (\MarshalString l..cPup (fetch (Rec1 f4) of l..datum)
				   l..conv)
	         (\MarshalAtom l..cPup (fetch (Rec1 f5) of l..datum)
				 l..conv))
	    (MarshalRPC-ExampleRec2#0#128 l..cPup r9 l..conv)
	    (LET ((l..datum r9))
	         (LET ((l..datum (fetch (Rec2 g3) of l..datum)))
		      (\MarshalString l..cPup (fetch (Rec1 f4) of l..datum)
					l..conv)
		      (\MarshalAtom l..cPup (fetch (Rec1 f5) of l..datum)
				      l..conv))
	         (\MarshalAtom l..cPup (fetch (Rec2 g4) of l..datum)
				 l..conv))
	    (MarshalRPC-ExampleRec5#0#96 l..cPup r10 l..conv)
	    [LET ((l..datum r10))
	         (if l..datum then (\MarshalString l..cPup (fetch (Rec5 k1a) of l..datum)
						       l..conv)
		       (for l..datum in (fetch (Rec5 k2) of l..datum)
			  do (MarshalRPC-ExampleRec6#0#48 l..cPup l..datum l..conv)
			       (\MarshalString l..cPup (fetch (Rec6 m2) of l..datum)
						 l..conv]
	    (PROGN (\CheckPupOverflow l..cPup 4)
		     (\AddPupDblWord l..cPup (LENGTH l1)
				       l..conv)
		     (for l..v in l1 do (\AddPupSmallp l..cPup l..v l..conv)))
	    [PROGN (\CheckPupOverflow l..cPup 4)
		     (\AddPupDblWord l..cPup (LENGTH l2)
				       l..conv)
		     (for l..v in l2 do (PROGN (\CheckPupOverflow l..cPup 4)
						       (\AddPupDblWord l..cPup (LENGTH l..v)
									 l..conv)
						       (for l..v in l..v
							  do (MarshalRPC-ExampleRec1#0#80 l..cPup 
											     l..v 
											  l..conv)
							       (LET ((l..datum l..v))
								    (\MarshalString
								      l..cPup
								      (fetch (Rec1 f4)
									 of l..datum)
								      l..conv)
								    (\MarshalAtom
								      l..cPup
								      (fetch (Rec1 f5)
									 of l..datum)
								      l..conv]
	    (SETQ l..cPup (\Call l..cPup (FUNCTION DispatchRPC-ExampleSignals)
				     l..conv))
	    (RETURN (PROG1 (create ComplexResult
					 a ← (\GetArgBool l..cPup l..conv)
					 c ← (\GetArgBool l..cPup l..conv)
					 b ← (\UnmarshalString l..cPup l..conv))
			       (\RELEASE.PUP l..cPup])

(RPCClientStub.ArgTestA
  [LAMBDA (a b c d e f l..interfaceArg l..conv)              (* Lupine generated stub)
    (PROG [l..cPup (l..interface (OR l..interfaceArg (CAR RPC-ExampleClientInterface]
	    (DECLARE (SPECVARS l..cPup))
	    (SETQ l..cPup (\StartCall (CAR l..interface)
					  (CDR l..interface)
					  l..conv))
	    (\AddPupWord l..cPup 6 l..conv)
	    (\AddPupSmallp l..cPup a l..conv)
	    (\AddPupDblWord l..cPup b l..conv)
	    (\AddPupBoolean l..cPup c l..conv)
	    (\MarshalString l..cPup d l..conv)
	    (\MarshalAtom l..cPup e l..conv)
	    (\MarshalStream l..cPup (QUOTE ({DSK}ARGFILE))
			      f l..conv)
	    (SETQ l..cPup (\Call l..cPup (FUNCTION DispatchRPC-ExampleSignals)
				     l..conv))
	    (RETURN (PROG1 (create ArgTestAResult
					 a1 ← (\GetArgSmallp l..cPup l..conv)
					 a2 ← (\GetArgDblWord l..cPup l..conv)
					 a3 ← (\GetArgBool l..cPup l..conv)
					 a4 ← (\UnmarshalString l..cPup l..conv)
					 a5 ← (\UnmarshalAtom l..cPup l..conv))
			       (\RELEASE.PUP l..cPup])

(RPCClientStub.ArgTestB
  [LAMBDA (a b c d e f l..interfaceArg l..conv)              (* Lupine generated stub)
    (PROG [l..cPup (l..interface (OR l..interfaceArg (CAR RPC-ExampleClientInterface]
	    (DECLARE (SPECVARS l..cPup))
	    (SETQ l..cPup (\StartCall (CAR l..interface)
					  (CDR l..interface)
					  l..conv))
	    (\AddPupWord l..cPup 7 l..conv)
	    (\AddPupSmallp l..cPup b l..conv)
	    (\AddPupDblWord l..cPup e l..conv)
	    (\AddPupBoolean l..cPup f l..conv)
	    (\MarshalString l..cPup a l..conv)
	    (\MarshalAtom l..cPup c l..conv)
	    (\MarshalStream l..cPup (QUOTE ({NODIRCORE}))
			      d l..conv)
	    (SETQ l..cPup (\Call l..cPup (FUNCTION DispatchRPC-ExampleSignals)
				     l..conv))
	    (RETURN (PROG1 (create ArgTestBResult
					 b2 ← (\GetArgSmallp l..cPup l..conv)
					 b4 ← (\GetArgDblWord l..cPup l..conv)
					 b5 ← (\GetArgBool l..cPup l..conv)
					 b1 ← (\UnmarshalString l..cPup l..conv)
					 b3 ← (\UnmarshalAtom l..cPup l..conv))
			       (\RELEASE.PUP l..cPup])

(MarshalRPC-ExampleRec5#0#96
  [LAMBDA (l..pup l..datum l..conv)                          (* Lupine generated stub)
    (\CheckPupOverflow l..pup 6)
    (if l..datum then [LET ((l..sequence (fetch (Rec5 k2) of l..datum)))
			     (\AddPupBoolean l..pup NIL l..conv)
			     (\AddPupDblWord l..pup (LENGTH l..sequence)
					       l..conv)
			     (\AddPupBoolean l..pup (fetch (Rec5 k1) of l..datum)
					       l..conv)
			     (\SkipBytesOut l..pup 4)
			     (\AddPupSmallp l..pup (fetch (Rec5 size) of l..datum)
					      l..conv)
			     (\SkipBytesOut l..pup (ITIMES 6 (LENGTH l..sequence]
	  else
	  (\AddPupBoolean l..pup T l..conv])

(MarshalRPC-ExampleRec6#0#48
  [LAMBDA (l..pup l..datum l..conv)                          (* Lupine generated stub)
    (\AddPupBoolean l..pup (fetch (Rec6 m1) of l..datum)
		      l..conv)
    (\SkipBytesOut l..pup 4])

(MarshalRPC-ExampleRec2#0#128
  [LAMBDA (l..pup l..datum l..conv)                          (* Lupine generated stub)
    (\CheckPupOverflow l..pup 2)
    (REPLACEFIELD (QUOTE (NIL 0 (BITS . 0)))
		    (\CurrentPupPosition l..pup)
		    (if (fetch (Rec2 g1) of l..datum) then 1 else 0))
    (REPLACEFIELD (QUOTE (NIL 0 (BITS . 30)))
		    (\CurrentPupPosition l..pup)
		    (if (fetch (Rec2 g2) of l..datum) then 1 else 0))
    (\IncrPupLength l..pup 2)
    (MarshalRPC-ExampleRec1#0#80 l..pup (fetch (Rec2 g3) of l..datum)
				   l..conv)
    (\SkipBytesOut l..pup 4])

(MarshalRPC-ExampleRec1#0#80
  [LAMBDA (l..pup l..datum l..conv)                          (* Lupine generated stub)
    (\CheckPupOverflow l..pup 2)
    (REPLACEFIELD (QUOTE (NIL 0 (BITS . 0)))
		    (\CurrentPupPosition l..pup)
		    (if (fetch (Rec1 f1) of l..datum) then 1 else 0))
    (REPLACEFIELD (QUOTE (NIL 0 (BITS . 16)))
		    (\CurrentPupPosition l..pup)
		    (if (fetch (Rec1 f2) of l..datum) then 1 else 0))
    [REPLACEFIELD (QUOTE (NIL 0 (BITS . 45)))
		    (\CurrentPupPosition l..pup)
		    (for l..i from 0 as l..t in (QUOTE (yen twa henery penery flat))
		       do (if (EQ l..t (fetch (Rec1 f3) of l..datum)) then (RETURN l..i))
		       finally (Signal (QUOTE BoundsCheck)
					   (CONS (fetch (Rec1 f3) of l..datum)
						   (QUOTE (yen twa henery penery flat]
    (\IncrPupLength l..pup 2)
    (\SkipBytesOut l..pup 8])

(MarshalRPC-ExampleRec4#0#48
  [LAMBDA (l..pup l..datum l..conv)                          (* Lupine generated stub)
    (\CheckPupOverflow l..pup 2)
    (REPLACEFIELD (QUOTE (NIL 0 (BITS . 0)))
		    (\CurrentPupPosition l..pup)
		    (if (fetch (Rec4 j1) of l..datum) then 1 else 0))
    (MarshalRPC-ExampleRec3#1#15 l..pup (fetch (Rec4 j2) of l..datum)
				   l..conv)
    (\AddPupDblWord l..pup (fetch (Rec4 j3) of l..datum)
		      l..conv])

(MarshalRPC-ExampleRec3#1#15
  [LAMBDA (l..pup l..datum l..conv)                          (* Lupine generated stub)
    (REPLACEFIELD (QUOTE (NIL 0 (BITS . 27)))
		    (\CurrentPupPosition l..pup)
		    (if (fetch (Rec3 h1) of l..datum) then 1 else 0))
    [REPLACEFIELD (QUOTE (NIL 0 (BITS . 210)))
		    (\CurrentPupPosition l..pup)
		    (for l..i from 0 as l..t in (QUOTE (yen twa henery penery flat))
		       do (if (EQ l..t (fetch (Rec3 h2) of l..datum)) then (RETURN l..i))
		       finally (Signal (QUOTE BoundsCheck)
					   (CONS (fetch (Rec3 h2) of l..datum)
						   (QUOTE (yen twa henery penery flat]
    (\IncrPupLength l..pup 2])

(MarshalRPC-ExampleRec3#0#16
  [LAMBDA (l..pup l..datum l..conv)                          (* Lupine generated stub)
    (\CheckPupOverflow l..pup 2)
    (REPLACEFIELD (QUOTE (NIL 0 (BITS . 12)))
		    (\CurrentPupPosition l..pup)
		    (if (fetch (Rec3 h1) of l..datum) then 1 else 0))
    [REPLACEFIELD (QUOTE (NIL 0 (BITS . 210)))
		    (\CurrentPupPosition l..pup)
		    (for l..i from 0 as l..t in (QUOTE (yen twa henery penery flat))
		       do (if (EQ l..t (fetch (Rec3 h2) of l..datum)) then (RETURN l..i))
		       finally (Signal (QUOTE BoundsCheck)
					   (CONS (fetch (Rec3 h2) of l..datum)
						   (QUOTE (yen twa henery penery flat]
    (\IncrPupLength l..pup 2])
)

(RPAQQ RPC-ExampleClientInterface NIL)
(DECLARE: DOEVAL@COMPILE DONTCOPY

(GLOBALVARS RPC-ExampleClientInterface)
)
(MovdsForRPC-Example)
(DECLARE: DONTCOPY EVAL@COMPILE EVAL@LOAD 
(FILESLOAD (LOADCOMP)
	   RPC-EXAMPLE)
)
(DECLARE: EVAL@LOAD DONTEVAL@COMPILE DOCOPY 
(FILESLOAD (SYSLOAD)
	   RPC)
)
(PUTPROPS RPC-EXAMPLECLIENT COPYRIGHT ("Xerox Corporation" 1985))
(DECLARE: DONTCOPY
  (FILEMAP (NIL (1804 15930 (MovdsForRPC-Example 1814 . 2211) (ImportRPC-Example 2213 . 2494) (
UnimportRPC-Example 2496 . 3062) (DispatchRPC-ExampleSignals 3064 . 4568) (RPCClientStub.Simple 4570
 . 5278) (RPCClientStub.Complex 5280 . 8949) (RPCClientStub.ArgTestA 8951 . 10091) (
RPCClientStub.ArgTestB 10093 . 11232) (MarshalRPC-ExampleRec5#0#96 11234 . 11956) (
MarshalRPC-ExampleRec6#0#48 11958 . 12201) (MarshalRPC-ExampleRec2#0#128 12203 . 12851) (
MarshalRPC-ExampleRec1#0#80 12853 . 13848) (MarshalRPC-ExampleRec4#0#48 13850 . 14355) (
MarshalRPC-ExampleRec3#1#15 14357 . 15123) (MarshalRPC-ExampleRec3#0#16 15125 . 15928)))))
STOP