-- Copyright (C) 1985 by Xerox Corporation. All rights reserved.
-- Stub file was translated on July 21, 1985 11:39:49 am PDT by Lupine of May 23, 1985 8:38:08 am PDT
-- Source interface ThSmarts came from file ThSmarts.bcd, which was created on July 21, 1985 11:30:21 am PDT with version stamp 146#3#27740261123 from source of January 13, 1985 12:53:55 pm PST.
-- The RPC stub modules for ThSmarts are:
-- ThSmartsRpcControl.mesa;
-- ThSmartsRpcClientImpl.mesa;
-- ThSmartsRpcBinderImpl.mesa;
-- ThSmartsRpcServerImpl.mesa.
-- The parameters for this translation are:
-- Target language = Cedar
-- Default parameter passing = VALUE
-- Deallocate server heap arguments = TRUE
-- Inline RpcServerImpl dispatcher stubs = TRUE
-- Declare signals = TRUE
-- Warn about short POINTER ("MDS") allocations = TRUE
-- Maximum number of dynamic heap NEWs = 50, MDS NEWs = 50
-- Acceptable parameter protocols = VersionRange[1..1].
-- NOTE: Discard this module unless you use dynamic client binding.
DIRECTORY
ThSmarts,
ThSmartsRpcControl USING [ImportInterface, InterfaceRecord, InterfaceRecordObject],
RPC USING [InterfaceName, Zones];
ThSmartsRpcBinderImpl: MONITOR
IMPORTS RpcControl: ThSmartsRpcControl
EXPORTS ThSmartsRpcControl
SHARES ThSmarts, ThSmartsRpcControl
= BEGIN OPEN RpcPublic: RPC;
-- Dynamic instantiation and binding routines.
ImportNewInterface: PUBLIC SAFE PROCEDURE [
interfaceName: RpcPublic.InterfaceName,
parameterStorage: RpcPublic.Zones ]
RETURNS [interfaceRecord: RpcControl.InterfaceRecord] =
TRUSTED BEGIN
interfaceRecord ← NewInterfaceRecord[];
RpcControl.ImportInterface[
interface: interfaceRecord,
interfaceName: interfaceName,
parameterStorage: parameterStorage];
END;
-- Utility routines for interface instantiation and caching.
NewInterfaceRecord: PUBLIC SAFE PROCEDURE
RETURNS [interfaceRecord: RpcControl.InterfaceRecord] =
TRUSTED BEGIN
interfaceRecord ← NEW[RpcControl.InterfaceRecordObject];
END;
-- No module initialization.
END. -- ThSmartsRpcBinderImpl.