Difference between revisions of "XCSG:Visibility"

From AtlasWiki
Jump to: navigation, search
(Created page with "==Specification== {{Enumeration | name = Visibility | description = The visibility of a Type or Variable in its Namespace. | required = For nodes [[Contains|contai...")
 
m (Dgriffen moved page Visibility to XCSG:Visibility over redirect: All tags are being moved to XCSG namespace)
 
(7 intermediate revisions by one other user not shown)
Line 2: Line 2:
 
{{Enumeration
 
{{Enumeration
 
| name = Visibility
 
| name = Visibility
| description = The visibility of a [[Type]] or [[Variable]] in its [[Namespace]].
+
| description = The visibility of a [[Type]], [[Variable]], or [[Function]] in its [[Namespace]].
 
| required = For nodes [[Contains|contained]] in a [[Namespace]].
 
| required = For nodes [[Contains|contained]] in a [[Namespace]].
| members =public,,Globally accessible;;protected,,Accessible from classes that extend the [[Class]] it is declared in;;package,,Accessible only within the [[Package]] it is contained in;;private,,Accessible only within the [[Namespace]] it is declared in
+
| members =public,,Globally accessible;;protectedPackage,,Accessible from classifiers that extend the [[Classifier]] it is declared in and from the [[Package]] it is declared in;;package,,Accessible only within the [[Package]] it is contained in;;private,,Accessible only within the [[Classifier]] it is declared in
 
}}
 
}}
 +
 +
Implementation note: in Atlas, to avoid name collisions with Java keywords, the visibility tags are accessed through <code>XCSG.publicVisibility</code>, <code>XCSG.protectedPackageVisibility</code>, <code>XCSG.packageVisibility</code>, and <code>XCSG.privateVisibility</code>.

Latest revision as of 15:43, 2 October 2015

Specification

Enumeration Visibility
Description The visibility of a Type, Variable, or Function in its Namespace.
Visibility Description
public Globally accessible
protectedPackage Accessible from classifiers that extend the Classifier it is declared in and from the Package it is declared in
package Accessible only within the Package it is contained in
private Accessible only within the Classifier it is declared in

Used on: Type, Variable

Implementation note: in Atlas, to avoid name collisions with Java keywords, the visibility tags are accessed through XCSG.publicVisibility, XCSG.protectedPackageVisibility, XCSG.packageVisibility, and XCSG.privateVisibility.