Difference between revisions of "XCSG:Visibility"
From AtlasWiki
(→Specification: renaming "package" visibility to "packageVisibility" to avoid issues with keyword, Package kind) |
(→Specification) |
||
Line 4: | Line 4: | ||
| description = The visibility of a [[Type]], [[Variable]], or [[Function]] 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;;protectedPackage,,Accessible from classes that extend the [[Class]] it is declared in and from the [[Package]] it is declared in;; | + | | members =public,,Globally accessible;;protectedPackage,,Accessible from classes that extend the [[Class]] 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 [[Class]] 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>. |
Revision as of 15:58, 14 April 2014
Specification
Enumeration | Visibility |
---|---|
Description | The visibility of a Type, Variable, or Function in its Namespace. |
Visibility | Description |
---|---|
public | Globally accessible |
protectedPackage | Accessible from classes that extend the Class 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 Class it is declared in |
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
.