ca110041.a

来自「linux下编程用 编译软件」· A 代码 · 共 119 行

A
119
字号
-- CA110041.A----                             Grant of Unlimited Rights----     Under contracts F33600-87-D-0337, F33600-84-D-0280, MDA903-79-C-0687,--     F08630-91-C-0015, and DCA100-97-D-0025, the U.S. Government obtained --     unlimited rights in the software and documentation contained herein.--     Unlimited rights are defined in DFAR 252.227-7013(a)(19).  By making --     this public release, the Government intends to confer upon all --     recipients unlimited rights  equal to those held by the Government.  --     These rights include rights to use, duplicate, release or disclose the --     released technical data and computer software in whole or in part, in --     any manner and for any purpose whatsoever, and to have or permit others --     to do so.----                                    DISCLAIMER----     ALL MATERIALS OR INFORMATION HEREIN RELEASED, MADE AVAILABLE OR--     DISCLOSED ARE AS IS.  THE GOVERNMENT MAKES NO EXPRESS OR IMPLIED --     WARRANTY AS TO ANY MATTER WHATSOEVER, INCLUDING THE CONDITIONS OF THE--     SOFTWARE, DOCUMENTATION OR OTHER INFORMATION RELEASED, MADE AVAILABLE --     OR DISCLOSED, OR THE OWNERSHIP, MERCHANTABILITY, OR FITNESS FOR A--     PARTICULAR PURPOSE OF SAID MATERIAL.--*---- OBJECTIVE:--      See CA110042.AM---- TEST DESCRIPTION:--      See CA110042.AM---- TEST FILES:--      The following files comprise this test:----         CA110040.A--      => CA110041.A--         CA110042.AM---- CHANGE HISTORY:--      06 Dec 94   SAIC    ACVC 2.0--      26 Apr 96   SAIC    ACVC 2.1: Modified prologue.----!package CA110040.CA110041 is         -- Child Package Computer_System.Manager   type User_Account is new Account with private;   procedure Initialize_User_Account (Acct : out User_Account);private-- The private portion of this spec demonstrates that components contained-- in the visible part of the parent are directly visible in the private -- part of a public child.   type Account_Access_Type is (None, Guest, User, System);   type User_Account is new Account with                   -- Parent type.      record         Privilege : Account_Access_Type := None;      end record;   System_Account : User_Account :=      (User_ID   => Administrator_Account.User_ID,          -- Parent constant.      Privilege => System);                                -- User_ID has been                                                           -- set to 1.   Auditor_Account : User_Account :=     (User_ID   => Next_Available_ID,                      -- Parent function.      Privilege => System);                                -- User_ID has been                                                           -- set to 2.   Total_Authorized_Accounts : System_Account_Capacity      renames Total_Accounts;                               -- Parent object.   Unauthorized_Account : exception      renames Illegal_Account;                              -- Parent exceptionend CA110040.CA110041;             -- Child Package Computer_System.Manager     --=================================================================--                                 -- Child Package body Computer_System.Managerpackage body CA110040.CA110041 is     function  Account_Limit_Reached  return Boolean is   begin      if Total_Authorized_Accounts = Maximum_System_Accounts then         return (True);      else         return (False);      end if;   end Account_Limit_Reached;   ---------------------------------------------------------------   function Valid_Account (Acct : User_Account) return Boolean is      Result : Boolean := False;    begin      if (Acct.User_ID /= System_Account.User_ID) and         (Acct.User_ID /= Auditor_Account.User_ID)       then         Result := True;      end if;      return (Result);   end Valid_Account;   ---------------------------------------------------------------   procedure Initialize_User_Account (Acct : out User_Account) is   begin      if Account_Limit_Reached then         raise Account_Limit_Exceeded;                 else                                                Acct.User_ID := Next_Available_ID;         Acct.Privilege := User;      end if;      if not Valid_Account (Acct) then         raise Unauthorized_Account;      end if;   end Initialize_User_Account;end CA110040.CA110041;          -- Child Package body Computer_System.Manager

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?