Example: biology

Common Language Infrastructure (CLI) Partitions I to VI

Reference number ECMA-123:2009 Ecma International 2009 ECMA-335 6th Edition / June 2012 Common Language Infrastructure (CLI) Partitions I to VI COPYRIGHT PROTECTED DOCUMENT Ecma International 2012 Ecma International 2012 i This Ecma Standard has been adopted by the General Assembly of June 2012. "COPYRIGHT NOTICE <2012> Ecma International This document may be copied, published and distributed to others, and cert ain derivative works of it may be prepared, copied, published, and distributed, in whole or in part, provided that the above copyright notice and this Copyright License and Disclaimer are included on all such copies and derivative works. The only derivative works that are permissible under this Copyright License and Disclaimer are: (i) works which incorporate all or portion of this document for the purpose of providing commentary or explanation (such as an annotated version of the document), (ii) works which incorporate all or portion of this document for the purpose of incorporating features that provide accessibility, (iii) translations of this document into languages other than English and into different formats and (iv) works by making use of this specification in standard conformant products by implementing ( by copy and paste wholly or partly) the functionality therein.

© Ecma International 2012 v I.9 Metadata 53 I.9.1 Components and assemblies 53

Tags:

  Language, Infrastructures, Common, Metadata, Common language infrastructure

Information

Domain:

Source:

Link to this page:

Please notify us if you found a problem with this document:

Other abuse

Transcription of Common Language Infrastructure (CLI) Partitions I to VI

1 Reference number ECMA-123:2009 Ecma International 2009 ECMA-335 6th Edition / June 2012 Common Language Infrastructure (CLI) Partitions I to VI COPYRIGHT PROTECTED DOCUMENT Ecma International 2012 Ecma International 2012 i This Ecma Standard has been adopted by the General Assembly of June 2012. "COPYRIGHT NOTICE <2012> Ecma International This document may be copied, published and distributed to others, and cert ain derivative works of it may be prepared, copied, published, and distributed, in whole or in part, provided that the above copyright notice and this Copyright License and Disclaimer are included on all such copies and derivative works. The only derivative works that are permissible under this Copyright License and Disclaimer are: (i) works which incorporate all or portion of this document for the purpose of providing commentary or explanation (such as an annotated version of the document), (ii) works which incorporate all or portion of this document for the purpose of incorporating features that provide accessibility, (iii) translations of this document into languages other than English and into different formats and (iv) works by making use of this specification in standard conformant products by implementing ( by copy and paste wholly or partly) the functionality therein.

2 However, the content of this document itself may not be modified in any way, including by removing the copyright notice or references to Ecma International, except as required to translate it into languages other than English or into a different format. The official version of an Ecma International document is the English Language version on the Ecma International website. In the event of discrepancies between a translated version and the official version, the official version shall govern. The limited permissions granted above are perpetual and will not be revoked by Ecma International or its successors or assigns. This document and the information contained herein is provided on an "AS IS" basis and ECMA INTERNATIONAL DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY OWNERSHIP RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

3 " ii Ecma International 2012 Common Language Infrastructure (CLI) Partitions I VI Partition I: Concepts and Architecture Partition II: metadata Definition and Semantics Partition III: CIL Instruction Set Partition IV: Profiles and Libraries Partition V: Binary Formats Partition VI: Annexes Ecma International 2012 iii T a b l e o f C o n t e n t s F o r e w o r d x x i I . 1 S c o p e 1 I . 2 C o n f o r m a n c e 2 I . 3 N o r m a t i v e r e f e r e n c e s 3 I . 4 C o n v e n t i o n s 5 I . 4 . 1 O r g a n i z a t i o n 5 I . 4 . 2 I n f o r m a t i v e t e x t 5 I . 5 T e r m s a n d d e f i n i t i o n s 6 I . 6 O v e r v i e w o f t h e C o m m o n L a n g u a g e I n f r a s t r u c t u r e 9 I.

4 6 . 1 R e l a t i o n s h i p t o t y p e s a f e t y 9 I . 6 . 2 R e l a t i o n s h i p t o m a n a g e d m e t a d a t a - d r i v e n e x e c u t i o n 10 I . 6 . 2 . 1 M a n a g e d c o d e 10 I . 6 . 2 . 2 M a n a g e d d a t a 11 I . 6 . 2 . 3 S u m m a r y 11 I . 7 C o m m o n L a n g u a g e S p e c i f i c a t i o n 12 I . 7 . 1 I n t r o d u c t i o n 12 I . 7 . 2 V i e w s o f C L S c o m p l i a n c e 12 I . 7 . 2 . 1 C L S f r a m e w o r k 12 I . 7 . 2 . 2 C L S c o n s u m e r 13 I . 7 . 2 . 3 C L S e x t e n d e r 13 I . 7 . 3 C L S c o m p l i a n c e 14 I . 7 . 3 . 1 M a r k i n g i t e m s a s C L S - c o m p l i a n t 14 I . 8 C o m m o n T y p e S y s t e m 16 I . 8 . 1 R e l a t i o n s h i p t o o b j e c t - o r i e n t e d p r o g r a m m i n g 19 I . 8 . 2 V a l u e s a n d t y p e s 19 I . 8 . 2 . 1 V a l u e t y p e s a n d r e f e r e n c e t y p e s 19 I.

5 8 . 2 . 2 B u i l t - i n v a l u e a n d r e f e r e n c e t y p e s 20 I . 8 . 2 . 3 C l a s s e s , i n t e r f a c e s , a n d o b j e c t s 21 I . 8 . 2 . 4 B o x i n g a n d u n b o x i n g o f v a l u e s 21 I . 8 . 2 . 5 I d e n t i t y a n d e q u a l i t y o f v a l u e s 22 I . 8 . 3 L o c a t i o n s 23 I . 8 . 3 . 1 A s s i g n m e n t - c o m p a t i b l e l o c a t i o n s 23 I . 8 . 3 . 2 C o e r c i o n 23 iv Ecma International 2012 I . 8 . 3 . 3 C a s t i n g 24 I . 8 . 4 T y p e m e m b e r s 24 I . 8 . 4 . 1 F i e l d s , a r r a y e l e m e n t s , a n d v a l u e s 24 I . 8 . 4 . 2 M e t h o d s 24 I . 8 . 4 . 3 S t a t i c f i e l d s a n d s t a t i c m e t h o d s 25 I.

6 8 . 4 . 4 V i r t u a l m e t h o d s 25 I . 8 . 5 N a m i n g 25 I . 8 . 5 . 1 V a l i d n a m e s 25 I . 8 . 5 . 2 A s s e m b l i e s a n d s c o p i n g 26 I . 8 . 5 . 3 V i s i b i l i t y , a c c e s s i b i l i t y , a n d s e c u r i t y 27 I . 8 . 6 C o n t r a c t s 29 I . 8 . 6 . 1 S i g n a t u r e s 30 I . 8 . 7 A s s i g n m e n t c o m p a t i b i l i t y 34 I . 8 . 7 . 1 A s s i g n m e n t c o m p a t i b i l i t y f o r s i g n a t u r e t y p e s 37 I . 8 . 7 . 2 A s s i g n m e n t c o m p a t i b i l i t y f o r l o c a t i o n t y p e s 38 I . 8 . 7 . 3 G e n e r a l a s s i g n m e n t c o m p a t i b i l i t y 38 I . 8 . 8 T y p e s a f e t y a n d v e r i f i c a t i o n 39 I . 8 . 9 T y p e d e f i n e r s 39 I . 8 . 9 . 1 A r r a y t y p e s 40 I . 8 . 9 . 2 U n m a n a g e d p o i n t e r t y p e s 41 I . 8 . 9 . 3 D e l e g a t e s 41 I . 8 . 9 . 4 I n t e r f a c e t y p e d e f i n i t i o n 42 I.

7 8 . 9 . 5 C l a s s t y p e d e f i n i t i o n 43 I . 8 . 9 . 6 O b j e c t t y p e d e f i n i t i o n s 44 I . 8 . 9 . 7 V a l u e t y p e d e f i n i t i o n 47 I . 8 . 9 . 8 T y p e i n h e r i t a n c e 47 I . 8 . 9 . 9 O b j e c t t y p e i n h e r i t a n c e 47 I . 8 . 9 . 1 0 V a l u e t y p e i n h e r i t a n c e 48 I . 8 . 9 . 1 1 I n t e r f a c e t y p e d e r i v a t i o n 48 I . 8 . 1 0 M e m b e r i n h e r i t a n c e 48 I . 8 . 1 0 . 1 F i e l d i n h e r i t a n c e 48 I . 8 . 1 0 . 2 M e t h o d i n h e r i t a n c e 48 I . 8 . 1 0 . 3 P r o p e r t y a n d e v e n t i n h e r i t a n c e 49 I . 8 . 1 0 . 4 H i d i n g , o v e r r i d i n g , a n d l a y out 49 I . 8 . 1 1 M e m b e r d e f i n i t i o n s 50 I . 8 . 1 1 . 1 M e t h o d d e f i n i t i o n s 50 I . 8 . 1 1 . 2 F i e l d d e f i n i t i o n s 51 I . 8 . 1 1 . 3 P r o p e r t y d e f i n i t i o n s 51 I.

8 8 . 1 1 . 4 E v e n t d e f i n i t i o n s 52 I . 8 . 1 1 . 5 N e s t e d t y p e d e f i n i t i o n s 52 Ecma International 2012 v I . 9 M e t a d a t a 53 I . 9 . 1 C o m p o n e n t s a n d a s s e m b l i e s 53 I . 9 . 2 A c c e s s i n g m e t a d a t a 53 I . 9 . 2 . 1 M e t a d a t a t o k e n s 54 I . 9 . 2 . 2 M e m b e r s i g n a t u r e s i n m e t a d a t a 54 I . 9 . 3 U n m a n a g e d c o d e 54 I . 9 . 4 M e t h o d i m p l e m e n t a t i o n m e t a d a t a 54 I . 9 . 5 C l a s s l a y o u t 55 I . 9 . 6 A s s e m b l i e s : n a m e s c o p e s f o r t y p e s 55 I . 9 . 7 M e t a d a t a e x t e n s i b i l i t y 56 I . 9 . 8 G l o b a l s , i m p o r t s , a n d e x p o r t s 57 I . 9 . 9 S c o p e d s t a t i c s 58 I . 1 0 N a m e a n d t y p e r u l e s f o r t h e C o m m o n L a n g u a g e S p e c i f i c a t i o n 59 I.

9 1 0 . 1 I d e n t i f i e r s 59 I . 1 0 . 2 O v e r l o a d i n g 59 I . 1 0 . 3 O p e r a t o r o v e r l o a d i n g 60 I . 1 0 . 3 . 1 U n a r y o p e r a t o r s 60 I . 1 0 . 3 . 2 B i n a r y o p e r a t o r s 61 I . 1 0 . 3 . 3 C o n v e r s i o n o p e r a t o r s 62 I . 1 0 . 4 N a m i n g p a t t e r n s 62 I . 1 0 . 5 E x c e p t i o n s 63 I . 1 0 . 6 C u s t o m a t t r i b u t e s 63 I . 1 0 . 7 G e n e r i c t y p e s a n d m e t h o d s 64 I . 1 0 . 7 . 1 N e s t e d t y p e p a r a m e t e r r e - d e c l a r a t i o n 64 I . 1 0 . 7 . 2 T y p e n a m e s a n d a r i t y e n c o d i n g 65 I . 1 0 . 7 . 3 T y p e c o n s t r a i n t r e - d e c l a r a t i o n 66 I . 1 0 . 7 . 4 C o n s t r a i n t t y p e r e s t r i c t i o n s 67 I . 1 0 . 7 . 5 F r a m e w o r k s a n d a c c e s s i b i l i t y o f n e s t e d t y p e s 67 I . 1 0 . 7 . 6 F r a m e w o r k s a n d a b s t r a c t o r v i r t u a l m e t h o d s 68 I.

10 1 1 C o l l e c t e d C o m m o n L a n g u a g e S p e c i f i c a t i o n r u l e s 69 I . 1 2 V i r t u a l E x e c u t i o n S y s t e m 72 I . 1 2 . 1 S u p p o r t e d d a t a t y p e s 72 I . 1 2 . 1 . 1 N a t i v e s i z e : n a t i v e i n t , n a t i v e u n s i g n e d i n t , O a n d & 73 I . 1 2 . 1 . 2 H a n d l i n g o f s h o r t i n t e g e r d a t a t y p e s 74 I . 1 2 . 1 . 3 H a n d l i n g o f f l o a t i n g - p o i n t d a t a t y p e s 75 I . 1 2 . 1 . 4 C I L i n s t r u c t i o n s a n d n u m e r i c t y p e s 76 I . 1 2 . 1 . 5 C I L i n s t r u c t i o n s a n d p o i n t e r t y p e s 77 I . 1 2 . 1 . 6 A g g r e g a t e d a t a 78 vi Ecma International 2012 I.


Related search queries