Skip to content

byron-hawkins/org.hawkinssoftware.rns-core

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 

Repository files navigation

Core Library for RNS

Provides the API and internal implementation for Role Normalization and Synthesis.

Artifact

A pure Java library.

Installation

Add the jar as a dependency in your Java project. Most features also depend on the Eclipse AST analyzer and the bytecode instrumentation agent.

Usage

  1. Group types into domains by annotating each domain member with @DomainRole.Join
    • Domain membership is inherited by all subtypes, including implementations of an interface that is a domain member
  2. To define domain relationships:
    • create a file <project-name>.domains.xml in src/main/resources/rns
    • specify the domain-scope DTD in the XML header
    • Enforce domain orthogonality with <orthogonal-set>
    • Enforce domain containment with <domain-containment>
  3. Domain features are more fully explained in the RNS documentation

About

Role Normalization and Synthesis

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages