A B C D E F G H I M N P R S T U V W
All Classes All Packages
All Classes All Packages
All Classes All Packages
A
- accept(Visitor) - Method in class net.emustudio.edigen.nodes.Decoder
-
Accepts the visitor.
- accept(Visitor) - Method in class net.emustudio.edigen.nodes.Disassembler
-
Accepts the visitor.
- accept(Visitor) - Method in class net.emustudio.edigen.nodes.Format
-
Accepts the visitor.
- accept(Visitor) - Method in class net.emustudio.edigen.nodes.Mask
-
Accepts the visitor.
- accept(Visitor) - Method in class net.emustudio.edigen.nodes.Pattern
-
Accepts the visitor.
- accept(Visitor) - Method in class net.emustudio.edigen.nodes.Rule
-
Accepts the visitor.
- accept(Visitor) - Method in class net.emustudio.edigen.nodes.Specification
-
Accepts the visitor.
- accept(Visitor) - Method in class net.emustudio.edigen.nodes.Subrule
-
Accepts the visitor.
- accept(Visitor) - Method in class net.emustudio.edigen.nodes.TreeNode
-
Calls the appropriate visitor method.
- accept(Visitor) - Method in class net.emustudio.edigen.nodes.Value
-
Accepts the visitor.
- accept(Visitor) - Method in class net.emustudio.edigen.nodes.Variant
-
Accepts the visitor.
- acceptChildren(Visitor) - Method in class net.emustudio.edigen.nodes.TreeNode
-
Sequentially calls the
TreeNode.accept(Visitor)method for all children. - addChild(TreeNode) - Method in class net.emustudio.edigen.nodes.TreeNode
-
Adds a child to this node, placing it on the end.
- addChildren(List<TreeNode>) - Method in class net.emustudio.edigen.nodes.TreeNode
- addChildren(TreeNode...) - Method in class net.emustudio.edigen.nodes.TreeNode
-
Adds multiple children to this node, placing them on the end.
- and(BitSequence) - Method in class net.emustudio.edigen.misc.BitSequence
-
Returns a bit sequence ANDed with an other bit sequence.
- and(Mask) - Method in class net.emustudio.edigen.nodes.Mask
-
Returns a mask ANDed with an another mask.
- and(Mask) - Method in class net.emustudio.edigen.nodes.Pattern
-
Returns a pattern ANDed with the specified mask.
- append(boolean) - Method in class net.emustudio.edigen.misc.BitSequence
-
Appends one bit to the end of this sequence.
- append(BitSequence) - Method in class net.emustudio.edigen.misc.BitSequence
-
Appends another bit sequence to the end of this sequence.
- Argument - Class in net.emustudio.edigen.ui
-
A command line argument specification.
- Argument(String, String, Setting) - Constructor for class net.emustudio.edigen.ui.Argument
-
Constructs a flag or a value argument.
- Argument(String, Setting) - Constructor for class net.emustudio.edigen.ui.Argument
-
Constructs an unnamed mandatory argument.
- Argument.Type - Enum in net.emustudio.edigen.ui
-
An argument type.
B
- BitSequence - Class in net.emustudio.edigen.misc
-
A sequence of bits with defined but modifiable length.
- BitSequence() - Constructor for class net.emustudio.edigen.misc.BitSequence
-
Constructs a bit sequence with zero length.
- BitSequence(int) - Constructor for class net.emustudio.edigen.misc.BitSequence
-
Constructs a bit sequence with the specified length.
- BitSequence(int, boolean) - Constructor for class net.emustudio.edigen.misc.BitSequence
-
Constructs a bit sequence with the specified length and fills it with the specified value.
C
- childCount() - Method in class net.emustudio.edigen.nodes.TreeNode
-
Returns the number of all direct children of this node.
- CommandLine - Class in net.emustudio.edigen.ui
-
The command line argument parser.
- CommandLine(Argument[]) - Constructor for class net.emustudio.edigen.ui.CommandLine
-
Constructs the command line parser for the given list of possible arguments, their types, etc.
- CommandLineException - Exception in net.emustudio.edigen.ui
-
An exception thrown when the command line arguments are invalid.
- CommandLineException(String) - Constructor for exception net.emustudio.edigen.ui.CommandLineException
-
Constructs the exception.
- containsOnly(boolean) - Method in class net.emustudio.edigen.misc.BitSequence
-
Returns true if the sequence contains only bits of the specified value.
- copy() - Method in class net.emustudio.edigen.nodes.TreeNode
D
- DEBUG - net.emustudio.edigen.Setting
-
If set, the program will run in the debug mode (printing the tree after each transformation).
- Decoder - Class in net.emustudio.edigen.nodes
-
The root node of the instruction decoder subtree.
- Decoder() - Constructor for class net.emustudio.edigen.nodes.Decoder
-
Creates new decoder.
- Decoder(String...) - Constructor for class net.emustudio.edigen.nodes.Decoder
-
Creates new decoder.
- Decoder(Set<String>) - Constructor for class net.emustudio.edigen.nodes.Decoder
-
Creates new decoder.
- DECODER_DIRECTORY - net.emustudio.edigen.Setting
-
An output directory of the generated instruction decoder file.
- DECODER_NAME - net.emustudio.edigen.Setting
-
The package + class name of the generated instruction decoder.
- DECODER_PACKAGE - net.emustudio.edigen.Setting
-
The generated decoder will be a member of this package.
- DECODER_TEMPLATE - net.emustudio.edigen.Setting
-
The external decoder template to use (instead of the internal, default template).
- DecoderGenerator - Class in net.emustudio.edigen.generation
-
The instruction decoder generator.
- DecoderGenerator(Decoder, String) - Constructor for class net.emustudio.edigen.generation.DecoderGenerator
-
Constructs the instruction decoder generator.
- DetectAmbiguousVisitor - Class in net.emustudio.edigen.passes
-
A visitor which checks for ambiguous variants.
- DetectAmbiguousVisitor() - Constructor for class net.emustudio.edigen.passes.DetectAmbiguousVisitor
- DetectRootRulesVisitor - Class in net.emustudio.edigen.passes
-
Detects root rules, including undefined root rules.
- DetectRootRulesVisitor() - Constructor for class net.emustudio.edigen.passes.DetectRootRulesVisitor
- DetectUnreachableFormatsVisitor - Class in net.emustudio.edigen.passes
-
Detects unreachable disassembler formats.
- DetectUnreachableFormatsVisitor() - Constructor for class net.emustudio.edigen.passes.DetectUnreachableFormatsVisitor
- DetectUnusedRulesVisitor - Class in net.emustudio.edigen.passes
-
A visitor which finds unused rules.
- DetectUnusedRulesVisitor() - Constructor for class net.emustudio.edigen.passes.DetectUnusedRulesVisitor
- Disassembler - Class in net.emustudio.edigen.nodes
-
The root node of the disassembler subtree.
- Disassembler() - Constructor for class net.emustudio.edigen.nodes.Disassembler
- DISASSEMBLER_DIRECTORY - net.emustudio.edigen.Setting
-
An output directory of the generated disassembler file.
- DISASSEMBLER_NAME - net.emustudio.edigen.Setting
-
The package + class name of the generated disassembler.
- DISASSEMBLER_PACKAGE - net.emustudio.edigen.Setting
-
The generated disassembler will be a member of this package.
- DISASSEMBLER_TEMPLATE - net.emustudio.edigen.Setting
-
The external disassembler template to use (instead of the internal, default template).
- DisassemblerGenerator - Class in net.emustudio.edigen.generation
-
The disassembler generator.
- DisassemblerGenerator(Disassembler, String, String) - Constructor for class net.emustudio.edigen.generation.DisassemblerGenerator
-
Constructs the disassembler generator.
- dump(PrintStream) - Method in class net.emustudio.edigen.nodes.TreeNode
-
Prints the whole tree recursively.
E
- Edigen - Class in net.emustudio.edigen
-
The main application class.
- Edigen() - Constructor for class net.emustudio.edigen.Edigen
- equals(Object) - Method in class net.emustudio.edigen.misc.BitSequence
-
Checks whether the other bit sequence has exactly the same content and length as this sequence.
- equals(Object) - Method in class net.emustudio.edigen.nodes.Mask
- equals(Object) - Method in class net.emustudio.edigen.nodes.Pattern
- equals(Object) - Method in class net.emustudio.edigen.nodes.Rule
- equals(Object) - Method in class net.emustudio.edigen.nodes.Subrule
- equals(Object) - Method in class net.emustudio.edigen.nodes.Value
- equals(Object) - Method in class net.emustudio.edigen.nodes.Variant
F
- fillTemplate(Template) - Method in class net.emustudio.edigen.generation.DecoderGenerator
-
Fills the template with variables and the generated code.
- fillTemplate(Template) - Method in class net.emustudio.edigen.generation.DisassemblerGenerator
-
Fills the template with variables and the generated code.
- fillTemplate(Template) - Method in class net.emustudio.edigen.generation.Generator
-
Sets the variables used in the template file.
- FLAG - net.emustudio.edigen.ui.Argument.Type
-
An argument without any value (a flag, e.g.
- Format - Class in net.emustudio.edigen.nodes
-
A node representing a textual instruction format (used in a disassembler).
- Format(String) - Constructor for class net.emustudio.edigen.nodes.Format
-
Constructs the format node.
- fromBinary(String) - Static method in class net.emustudio.edigen.misc.BitSequence
-
Returns a new instance of bit sequence with the length and content obtained from the binary number represented as a string.
- fromHexadecimal(String) - Static method in class net.emustudio.edigen.misc.BitSequence
-
Returns a new instance of bit sequence with the length and content obtained from the hexadecimal number represented as a string.
G
- generate() - Method in class net.emustudio.edigen.generation.Generator
-
Generates the output file from the current AST.
- generate() - Method in class net.emustudio.edigen.ui.Help
-
Generates the help text.
- GenerateFieldsVisitor - Class in net.emustudio.edigen.generation
-
A visitor which generates Java source code of the instruction decoder fields for rules and values.
- GenerateFieldsVisitor(Writer) - Constructor for class net.emustudio.edigen.generation.GenerateFieldsVisitor
-
Constucts the visitor.
- GenerateFormatsVisitor - Class in net.emustudio.edigen.generation
-
A visitor which generates the code of the array of disassembler formats.
- GenerateFormatsVisitor(Writer) - Constructor for class net.emustudio.edigen.generation.GenerateFormatsVisitor
-
Constucts the visitor.
- GenerateMaxInstructionBytes - Class in net.emustudio.edigen.generation
-
Finds out max instruction size in bytes.
- GenerateMaxInstructionBytes(Writer) - Constructor for class net.emustudio.edigen.generation.GenerateMaxInstructionBytes
-
Constructs the visitor.
- GenerateMethodsVisitor - Class in net.emustudio.edigen.generation
-
A visitor which generates Java source code of the instruction decoder methods for all rules.
- GenerateMethodsVisitor(Writer) - Constructor for class net.emustudio.edigen.generation.GenerateMethodsVisitor
-
Constructs the visitor.
- GenerateParametersVisitor - Class in net.emustudio.edigen.generation
-
A visitor which generates the code of the two-dimensional array of disassembler parameters (i.e., values on the right side of a format).
- GenerateParametersVisitor(Writer) - Constructor for class net.emustudio.edigen.generation.GenerateParametersVisitor
-
Constucts the visitor.
- Generator - Class in net.emustudio.edigen.generation
-
An output code generator.
- Generator(String, String) - Constructor for class net.emustudio.edigen.generation.Generator
-
Constructs the part of the generator.
- get(int) - Method in class net.emustudio.edigen.misc.BitSequence
-
Returns the bit at the given index.
- getBits() - Method in class net.emustudio.edigen.nodes.Mask
-
Returns the bit sequence.
- getBits() - Method in class net.emustudio.edigen.nodes.Pattern
-
Returns the bit sequence.
- getChild(int) - Method in class net.emustudio.edigen.nodes.TreeNode
-
Returns the child at given index.
- getChildren() - Method in class net.emustudio.edigen.nodes.TreeNode
-
Returns all children of this node.
- getClassName() - Method in class net.emustudio.edigen.generation.Generator
-
Returns the class name (without the package name).
- getDecoder() - Method in class net.emustudio.edigen.nodes.Specification
-
Returns the instruction decoder node.
- getDescription() - Method in class net.emustudio.edigen.ui.Argument
-
Returns the description used in the help text.
- getDisassembler() - Method in class net.emustudio.edigen.nodes.Specification
-
Returns the disassembler node.
- getFieldName() - Method in class net.emustudio.edigen.nodes.Rule
-
Returns a field name of this rule (key).
- getFieldName() - Method in class net.emustudio.edigen.nodes.Subrule
-
Returns the field name which should be generated for this subrule.
- getFieldName() - Method in class net.emustudio.edigen.nodes.Value
-
Returns the field name which should be generated for this value.
- getFieldName() - Method in class net.emustudio.edigen.nodes.Variant
-
Returns the generated field name if the variant returns a string.
- getFieldName(String) - Method in class net.emustudio.edigen.nodes.Rule
-
Returns a field name which should be generated for this rule (key).
- getFormatString() - Method in class net.emustudio.edigen.nodes.Format
-
Returns the format string.
- getKey() - Method in class net.emustudio.edigen.ui.Argument
-
Returns the key to which the recognized value will be later assigned.
- getLabel() - Method in class net.emustudio.edigen.nodes.Rule
-
Returns a human-readable label of this rule - a name or a list of names separated by commas.
- getLength() - Method in class net.emustudio.edigen.misc.BitSequence
-
Returns the total length of this bit sequence.
- getLength() - Method in class net.emustudio.edigen.nodes.Subrule
-
Returns the subrule length.
- getLine() - Method in class net.emustudio.edigen.nodes.TreeNode
-
Returns the starting line number in the source file from which this node was generated.
- getMandatoryArguments() - Method in class net.emustudio.edigen.ui.CommandLine
-
Returns a list of all expected mandatory arguments.
- getMethodName() - Method in class net.emustudio.edigen.nodes.Rule
-
Returns a name of the method which should be generated for this rule.
- getName() - Method in class net.emustudio.edigen.nodes.Subrule
-
Returns the subrule name, as obtained from the input.
- getName() - Method in class net.emustudio.edigen.nodes.Value
-
Returns the name, as obtained from the input.
- getNames() - Method in class net.emustudio.edigen.nodes.Rule
-
Returns a list of all names of this rule.
- getOption() - Method in class net.emustudio.edigen.ui.Argument
-
Returns the option name, e.g.
- getOptionalArguments() - Method in class net.emustudio.edigen.ui.CommandLine
-
Returns a list of all possible optional arguments.
- getPackageName() - Method in class net.emustudio.edigen.generation.Generator
-
Returns the package name.
- getParent() - Method in class net.emustudio.edigen.nodes.TreeNode
-
Returns the parent of this node.
- getPrePattern() - Method in class net.emustudio.edigen.nodes.Subrule
-
Returns the forward pattern information.
- getReachable() - Method in class net.emustudio.edigen.passes.DetectUnreachableFormatsVisitor
- getReturnString() - Method in class net.emustudio.edigen.nodes.Variant
-
Returns the string which this variant returns.
- getReturnSubrule() - Method in class net.emustudio.edigen.nodes.Variant
-
Returns the subrule which this variant returns.
- getRootRule() - Method in class net.emustudio.edigen.nodes.Decoder
-
Returns the first starting rule.
- getRootRuleName() - Method in class net.emustudio.edigen.nodes.Rule
-
Get root rule name (if this rule is root).
- getRootRuleNames() - Method in class net.emustudio.edigen.nodes.Decoder
-
Returns the starting rules names.
- getRootRules() - Method in class net.emustudio.edigen.nodes.Decoder
-
Returns all starting rule variants.
- getRule() - Method in class net.emustudio.edigen.nodes.Subrule
-
Returns the rule to which this subrule refers.
- getRule() - Method in class net.emustudio.edigen.nodes.Value
-
Returns the rule associated with this value.
- getStart() - Method in class net.emustudio.edigen.nodes.Mask
-
Returns the starting offset relative to the variant start.
- getStart() - Method in class net.emustudio.edigen.nodes.Subrule
-
Returns the starting offset relative to the variant start.
- getStrategies() - Method in class net.emustudio.edigen.nodes.Value
-
Returns the constant decoding strategies.
- getType() - Method in class net.emustudio.edigen.ui.Argument
-
Returns the argument type.
- getValue() - Method in class net.emustudio.edigen.ui.Argument
-
Returns the value name suitable for printing in a help text, e.g.
- GroupVisitor - Class in net.emustudio.edigen.passes
-
Groups sibling masks or patterns containing the same bit sequences into one node.
- GroupVisitor() - Constructor for class net.emustudio.edigen.passes.GroupVisitor
H
- hashCode() - Method in class net.emustudio.edigen.misc.BitSequence
-
Returns the hash code of this sequence.
- hashCode() - Method in class net.emustudio.edigen.nodes.Mask
- hashCode() - Method in class net.emustudio.edigen.nodes.Pattern
- hashCode() - Method in class net.emustudio.edigen.nodes.Rule
- hashCode() - Method in class net.emustudio.edigen.nodes.Subrule
- hashCode() - Method in class net.emustudio.edigen.nodes.TreeNode
- hasOnlyOneName() - Method in class net.emustudio.edigen.nodes.Rule
-
Returns true if this rule has only one name (not a list of names separated by commas).
- Help - Class in net.emustudio.edigen.ui
-
The command line help text generator.
- Help(String, CommandLine) - Constructor for class net.emustudio.edigen.ui.Help
-
Consturcts the help generator.
I
- IGNORE_UNUSED_RULES - net.emustudio.edigen.Setting
-
Ignore unused rules.
- isRoot() - Method in class net.emustudio.edigen.nodes.Rule
-
Determines if it is a root rule
M
- main(String[]) - Static method in class net.emustudio.edigen.Edigen
-
The application entry point used when running the program from the command line.
- MANDATORY - net.emustudio.edigen.ui.Argument.Type
-
A mandatory argument.
- Mask - Class in net.emustudio.edigen.nodes
-
Mask node - a sequence of bits used to filter another sequence during binary pattern matching.
- Mask(BitSequence) - Constructor for class net.emustudio.edigen.nodes.Mask
-
Constructs the mask.
- MergePatternsVisitor - Class in net.emustudio.edigen.passes
-
A visitor which merges multiple patterns of a variant into one mask + pattern.
- MergePatternsVisitor() - Constructor for class net.emustudio.edigen.passes.MergePatternsVisitor
N
- NarrowMasksVisitor - Class in net.emustudio.edigen.passes
-
A visitor which removes all child masks of a node except the first one, attaches them to a new empty pattern and attaches that pattern (if it is not empty) to the first mask.
- NarrowMasksVisitor() - Constructor for class net.emustudio.edigen.passes.NarrowMasksVisitor
- net.emustudio.edigen - package net.emustudio.edigen
- net.emustudio.edigen.generation - package net.emustudio.edigen.generation
- net.emustudio.edigen.misc - package net.emustudio.edigen.misc
- net.emustudio.edigen.nodes - package net.emustudio.edigen.nodes
- net.emustudio.edigen.passes - package net.emustudio.edigen.passes
- net.emustudio.edigen.ui - package net.emustudio.edigen.ui
P
- parse(String[]) - Method in class net.emustudio.edigen.ui.CommandLine
-
Parses the given argument list.
- Pattern - Class in net.emustudio.edigen.nodes
-
Pattern node - a sequence of bits used during instruction decoding.
- Pattern(BitSequence) - Constructor for class net.emustudio.edigen.nodes.Pattern
-
Constructs a pattern.
- PrettyPrinter - Class in net.emustudio.edigen.misc
-
Minimalistic on-the-fly Java source code pretty-printer.
- PrettyPrinter(Writer) - Constructor for class net.emustudio.edigen.misc.PrettyPrinter
-
Constructs the pretty printer.
- PushDownVariantsVisitor - Class in net.emustudio.edigen.passes
-
A visitor which pushes the variant nodes down to the bottom of the tree.
- PushDownVariantsVisitor() - Constructor for class net.emustudio.edigen.passes.PushDownVariantsVisitor
R
- remove() - Method in class net.emustudio.edigen.nodes.TreeNode
-
Removes this node from the tree.
- RemoveUnreachablePatternsVisitor - Class in net.emustudio.edigen.passes
-
A visitor which removes patterns which are children of zero-only masks.
- RemoveUnreachablePatternsVisitor() - Constructor for class net.emustudio.edigen.passes.RemoveUnreachablePatternsVisitor
- ResolveNamesVisitor - Class in net.emustudio.edigen.passes
-
A visitor which creates associations between objects according to their names obtained from the input file.
- ResolveNamesVisitor() - Constructor for class net.emustudio.edigen.passes.ResolveNamesVisitor
- returns() - Method in class net.emustudio.edigen.nodes.Variant
-
Returns true if the variant returns a string or a subrule.
- Rule - Class in net.emustudio.edigen.nodes
-
Instruction decoder rule node.
- Rule(String) - Constructor for class net.emustudio.edigen.nodes.Rule
-
Constructs a rule with one name.
- Rule(List<String>) - Constructor for class net.emustudio.edigen.nodes.Rule
-
Constructs a rule with one or more names.
- run(String[]) - Method in class net.emustudio.edigen.Edigen
-
Runs the generator without calling System.exit() - useful when running from a Maven plugin.
S
- SemanticCheckVisitor - Class in net.emustudio.edigen.passes
-
A visitor which checks for additional semantic errors (not directly related to name resolution).
- SemanticCheckVisitor() - Constructor for class net.emustudio.edigen.passes.SemanticCheckVisitor
- SemanticException - Exception in net.emustudio.edigen
-
This class represents an error found during semantic analysis, for example a duplicate rule name.
- SemanticException(String, TreeNode) - Constructor for exception net.emustudio.edigen.SemanticException
-
Constructs a semantic exception.
- set(int, boolean) - Method in class net.emustudio.edigen.misc.BitSequence
-
Sets the bit at the given index to the specified value.
- setLine(Integer) - Method in class net.emustudio.edigen.nodes.TreeNode
-
Sets the starting source line number of this node.
- setOutputDirectory(String) - Method in class net.emustudio.edigen.generation.Generator
-
Sets the directory to write the generated file to.
- setReturnString(String) - Method in class net.emustudio.edigen.nodes.Variant
-
Tells the variant to return the string on match.
- setReturnSubrule(Subrule) - Method in class net.emustudio.edigen.nodes.Variant
-
Tells the variant to return the value of the specified subrule.
- setRoot(boolean, String) - Method in class net.emustudio.edigen.nodes.Rule
-
Sets if this rule is a root rule.
- setRootRules(Set<Rule>) - Method in class net.emustudio.edigen.nodes.Decoder
-
Set starting rules.
- setRule(Rule) - Method in class net.emustudio.edigen.nodes.Subrule
-
Specifies to which rule this subrule refers.
- setRule(Rule) - Method in class net.emustudio.edigen.nodes.Value
-
Sets the rule associated with this value.
- setStart(int) - Method in class net.emustudio.edigen.nodes.Mask
-
Sets the starting offset relative to the variant start.
- setStart(int) - Method in class net.emustudio.edigen.nodes.Subrule
-
Sets the starting offset relative to the variant start.
- setStrategies(List<String>) - Method in class net.emustudio.edigen.nodes.Value
-
Sets the constant decoding strategy.
- setTemplateFile(String) - Method in class net.emustudio.edigen.generation.Generator
-
Sets the template file to use instead of the default one.
- Setting - Enum in net.emustudio.edigen
-
An enumeration of possible program configuration settings, usually read from the command line.
- setVariable(String, String) - Method in class net.emustudio.edigen.misc.Template
-
Sets a value of a variable.
- shallowCopy() - Method in class net.emustudio.edigen.nodes.Decoder
- shallowCopy() - Method in class net.emustudio.edigen.nodes.Disassembler
- shallowCopy() - Method in class net.emustudio.edigen.nodes.Format
- shallowCopy() - Method in class net.emustudio.edigen.nodes.Mask
- shallowCopy() - Method in class net.emustudio.edigen.nodes.Pattern
- shallowCopy() - Method in class net.emustudio.edigen.nodes.Rule
- shallowCopy() - Method in class net.emustudio.edigen.nodes.Specification
- shallowCopy() - Method in class net.emustudio.edigen.nodes.Subrule
- shallowCopy() - Method in class net.emustudio.edigen.nodes.TreeNode
- shallowCopy() - Method in class net.emustudio.edigen.nodes.Value
- shallowCopy() - Method in class net.emustudio.edigen.nodes.Variant
- SortVisitor - Class in net.emustudio.edigen.passes
-
A visitor sorting the variants by the lengths of their masks - from the shortest to the longest one.
- SortVisitor() - Constructor for class net.emustudio.edigen.passes.SortVisitor
- Specification - Class in net.emustudio.edigen.nodes
-
The root node of the specification AST.
- Specification(Decoder, Disassembler) - Constructor for class net.emustudio.edigen.nodes.Specification
-
Constructs the specification node.
- SPECIFICATION - net.emustudio.edigen.Setting
-
A specification file.
- split(int) - Method in class net.emustudio.edigen.misc.BitSequence
-
Splits the sequence into shorter sequences of equal length.
- SplitVisitor - Class in net.emustudio.edigen.passes
-
A visitor which splits the patterns and mask into smaller pieces of the same length (max length is equal to decoder unit size).
- SplitVisitor() - Constructor for class net.emustudio.edigen.passes.SplitVisitor
- Subrule - Class in net.emustudio.edigen.nodes
-
A subrule is a rule name contained in a variant.
- Subrule(String) - Constructor for class net.emustudio.edigen.nodes.Subrule
-
Constructs the subrule with an unspecified length.
- Subrule(String, Integer, Pattern) - Constructor for class net.emustudio.edigen.nodes.Subrule
-
Constructs the subrule with the specified length and pre-pattern.
- Subrule(String, Pattern) - Constructor for class net.emustudio.edigen.nodes.Subrule
-
Constructs the subrule with the specified pre-pattern.
- subSequence(int, int) - Method in class net.emustudio.edigen.misc.BitSequence
-
Returns the subsequence of the current bit sequence.
T
- Template - Class in net.emustudio.edigen.misc
-
A simple templating system.
- Template(BufferedReader, BufferedWriter) - Constructor for class net.emustudio.edigen.misc.Template
-
Constructs a template system.
- toBooleanArray() - Method in class net.emustudio.edigen.misc.BitSequence
-
Returns this sequence as an array of boolean values.
- toHexadecimal() - Method in class net.emustudio.edigen.misc.BitSequence
-
Returns the hexadecimal representation of this sequence.
- toString() - Method in class net.emustudio.edigen.misc.BitSequence
-
Returns a string representation of the object.
- toString() - Method in class net.emustudio.edigen.nodes.Decoder
-
Returns a string representation of the object.
- toString() - Method in class net.emustudio.edigen.nodes.Disassembler
-
Returns a string representation of the object.
- toString() - Method in class net.emustudio.edigen.nodes.Format
-
Returns a string representation of the object.
- toString() - Method in class net.emustudio.edigen.nodes.Mask
-
Returns the mask as a string in binary notation.
- toString() - Method in class net.emustudio.edigen.nodes.Pattern
-
Returns the pattern as a string in binary notation.
- toString() - Method in class net.emustudio.edigen.nodes.Rule
-
Returns a string representation of the object containing a rule name.
- toString() - Method in class net.emustudio.edigen.nodes.Specification
-
Returns a string representation of the object.
- toString() - Method in class net.emustudio.edigen.nodes.Subrule
-
Returns a string representation of the object containing the rule name and optionally start and length.
- toString() - Method in class net.emustudio.edigen.nodes.Value
-
Returns a string representation of the object.
- toString() - Method in class net.emustudio.edigen.nodes.Variant
-
Returns the mask as a string in binary notation.
- translate() - Method in class net.emustudio.edigen.Translator
-
Reads the input file, transforms the tree and generates the code.
- Translator - Class in net.emustudio.edigen
-
A translator from the input file in the domain specific language (processor specification) to two output files (instruction decoder and disassembler) in the Java language.
- Translator(Map<Setting, String>) - Constructor for class net.emustudio.edigen.Translator
-
Constructs the translator.
- TreeNode - Class in net.emustudio.edigen.nodes
-
A node of an abstract syntax tree (AST).
- TreeNode() - Constructor for class net.emustudio.edigen.nodes.TreeNode
U
- UNIT_SIZE_BITS - Static variable in class net.emustudio.edigen.nodes.Decoder
-
Size (in bits) of one unit which decoder can read at once
V
- Value - Class in net.emustudio.edigen.nodes
-
The disassembler value node - bound to an instruction decoder rule name.
- Value(String) - Constructor for class net.emustudio.edigen.nodes.Value
-
Constructs the value.
- VALUE - net.emustudio.edigen.ui.Argument.Type
-
An argument with one value (for example
-v value). - valueOf(String) - Static method in enum net.emustudio.edigen.Setting
-
Returns the enum constant of this type with the specified name.
- valueOf(String) - Static method in enum net.emustudio.edigen.ui.Argument.Type
-
Returns the enum constant of this type with the specified name.
- values() - Static method in enum net.emustudio.edigen.Setting
-
Returns an array containing the constants of this enum type, in the order they are declared.
- values() - Static method in enum net.emustudio.edigen.ui.Argument.Type
-
Returns an array containing the constants of this enum type, in the order they are declared.
- Variant - Class in net.emustudio.edigen.nodes
-
Rule variant node.
- Variant() - Constructor for class net.emustudio.edigen.nodes.Variant
- visit(Decoder) - Method in class net.emustudio.edigen.generation.GenerateFieldsVisitor
-
Writes the constants.
- visit(Decoder) - Method in class net.emustudio.edigen.generation.GenerateMaxInstructionBytes
- visit(Decoder) - Method in class net.emustudio.edigen.generation.GenerateMethodsVisitor
-
Finds out which root rules are available.
- visit(Decoder) - Method in class net.emustudio.edigen.passes.DetectRootRulesVisitor
- visit(Decoder) - Method in class net.emustudio.edigen.passes.DetectUnreachableFormatsVisitor
- visit(Decoder) - Method in class net.emustudio.edigen.passes.DetectUnusedRulesVisitor
- visit(Decoder) - Method in class net.emustudio.edigen.passes.ResolveNamesVisitor
-
First saves all rule names and then traverses the rule subtrees.
- visit(Decoder) - Method in class net.emustudio.edigen.Visitor
- visit(Disassembler) - Method in class net.emustudio.edigen.generation.GenerateFormatsVisitor
-
Writes the formats separated by commas.
- visit(Disassembler) - Method in class net.emustudio.edigen.generation.GenerateParametersVisitor
-
Writes the list of format sets separated by commas.
- visit(Disassembler) - Method in class net.emustudio.edigen.passes.DetectUnreachableFormatsVisitor
- visit(Disassembler) - Method in class net.emustudio.edigen.Visitor
- visit(Format) - Method in class net.emustudio.edigen.generation.GenerateFormatsVisitor
-
Saves the format string in the quotes into the variable.
- visit(Format) - Method in class net.emustudio.edigen.generation.GenerateParametersVisitor
-
Writes the list of parameters separated by commas and enclosed in curly brackets.
- visit(Format) - Method in class net.emustudio.edigen.passes.DetectUnreachableFormatsVisitor
- visit(Format) - Method in class net.emustudio.edigen.passes.SemanticCheckVisitor
-
Finds out whether the particular set of rules was not already used.
- visit(Format) - Method in class net.emustudio.edigen.Visitor
- visit(Mask) - Method in class net.emustudio.edigen.generation.GenerateMaxInstructionBytes
-
Detects max bits size of a mask and its children
- visit(Mask) - Method in class net.emustudio.edigen.generation.GenerateMethodsVisitor
-
Writes the unit reading code and if the mask is not zero-only, also writes the
switchstatement. - visit(Mask) - Method in class net.emustudio.edigen.passes.DetectAmbiguousVisitor
-
Adds the mask to the list of child masks.
- visit(Mask) - Method in class net.emustudio.edigen.passes.GroupVisitor
-
If the current task is to save bits, saves them and returns the control; otherwise groups the mask's children and thus continues the traversal.
- visit(Mask) - Method in class net.emustudio.edigen.passes.PushDownVariantsVisitor
-
Saves the topmost mask of the variant and dettaches it from the variant.
- visit(Mask) - Method in class net.emustudio.edigen.passes.RemoveUnreachablePatternsVisitor
-
Removes the child pattern if the mask contains only zeroes.
- visit(Mask) - Method in class net.emustudio.edigen.passes.SortVisitor
-
Adds the mask to the sorting list and detaches the parent variant.
- visit(Mask) - Method in class net.emustudio.edigen.passes.SplitVisitor
-
Saves the mask bits and removes the node.
- visit(Mask) - Method in class net.emustudio.edigen.Visitor
- visit(Pattern) - Method in class net.emustudio.edigen.generation.GenerateMethodsVisitor
-
Writes the
case/defaultstatement. - visit(Pattern) - Method in class net.emustudio.edigen.passes.DetectAmbiguousVisitor
-
Detects possible ambiguity under the pattern node and traverses the children.
- visit(Pattern) - Method in class net.emustudio.edigen.passes.GroupVisitor
-
If the current task is to save bits, saves them and returns the control; otherwise groups the pattern's children and thus continues the traversal.
- visit(Pattern) - Method in class net.emustudio.edigen.passes.MergePatternsVisitor
-
Appends "true" bits to the mask (because these bits will be checked during decoding) and itself to the pattern (these bits should be the result of masking during decoding).
- visit(Pattern) - Method in class net.emustudio.edigen.passes.NarrowMasksVisitor
-
Moves all child masks of the pattern node except the first one.
- visit(Pattern) - Method in class net.emustudio.edigen.passes.PushDownVariantsVisitor
-
Attaches the variant to the bottommost pattern.
- visit(Pattern) - Method in class net.emustudio.edigen.passes.SemanticCheckVisitor
-
Checks whether a subrule without length was already defined in this variant.
- visit(Pattern) - Method in class net.emustudio.edigen.passes.SplitVisitor
-
Saves the pattern bits and removes the node.
- visit(Pattern) - Method in class net.emustudio.edigen.Visitor
- visit(Rule) - Method in class net.emustudio.edigen.generation.GenerateFieldsVisitor
-
Adds the field names for the particular rule to the list.
- visit(Rule) - Method in class net.emustudio.edigen.generation.GenerateMaxInstructionBytes
- visit(Rule) - Method in class net.emustudio.edigen.generation.GenerateMethodsVisitor
-
Writes the method definition.
- visit(Rule) - Method in class net.emustudio.edigen.passes.DetectAmbiguousVisitor
-
Detects possible ambiguity under the rule node and traverses the children.
- visit(Rule) - Method in class net.emustudio.edigen.passes.DetectRootRulesVisitor
-
Assigns rule objects to the mapping of names to objects.
- visit(Rule) - Method in class net.emustudio.edigen.passes.DetectUnusedRulesVisitor
-
In case of the root rule traverses it and saves references to other rules.
- visit(Rule) - Method in class net.emustudio.edigen.passes.GroupVisitor
-
Groups the rule recursively.
- visit(Rule) - Method in class net.emustudio.edigen.passes.NarrowMasksVisitor
-
Moves all child masks of the rule node except the first one.
- visit(Rule) - Method in class net.emustudio.edigen.passes.PushDownVariantsVisitor
-
Attaches the top mask of each variant to the rule.
- visit(Rule) - Method in class net.emustudio.edigen.passes.ResolveNamesVisitor
-
Adds item(s) to the map from rule names to rules.
- visit(Rule) - Method in class net.emustudio.edigen.passes.SemanticCheckVisitor
-
Adds the rule to the set of returning rules if one of its variants return.
- visit(Rule) - Method in class net.emustudio.edigen.passes.SortVisitor
-
Collects the variants, sorts them by mask length and re-attaches them in the correct order.
- visit(Rule) - Method in class net.emustudio.edigen.Visitor
- visit(Specification) - Method in class net.emustudio.edigen.Visitor
- visit(Subrule) - Method in class net.emustudio.edigen.generation.GenerateMaxInstructionBytes
- visit(Subrule) - Method in class net.emustudio.edigen.generation.GenerateMethodsVisitor
-
Writes the method invocation.
- visit(Subrule) - Method in class net.emustudio.edigen.passes.DetectUnusedRulesVisitor
- visit(Subrule) - Method in class net.emustudio.edigen.passes.MergePatternsVisitor
-
Sets the starting offset of the subrule.
- visit(Subrule) - Method in class net.emustudio.edigen.passes.ResolveNamesVisitor
-
Associates the subrule with the rule.
- visit(Subrule) - Method in class net.emustudio.edigen.passes.SemanticCheckVisitor
-
Checks whether a subrule without length was already defined in this variant and sets the flag if this subrule does not have a specified length.
- visit(Subrule) - Method in class net.emustudio.edigen.Visitor
- visit(TreeNode) - Method in class net.emustudio.edigen.Visitor
- visit(Value) - Method in class net.emustudio.edigen.generation.GenerateParametersVisitor
-
Writes the name of the field for the disassembler parameter.
- visit(Value) - Method in class net.emustudio.edigen.passes.DetectUnreachableFormatsVisitor
- visit(Value) - Method in class net.emustudio.edigen.passes.ResolveNamesVisitor
-
Associates the value with the rule.
- visit(Value) - Method in class net.emustudio.edigen.passes.SemanticCheckVisitor
-
Finds out whether at least one rule's variant can return a value.
- visit(Value) - Method in class net.emustudio.edigen.Visitor
- visit(Variant) - Method in class net.emustudio.edigen.generation.GenerateFieldsVisitor
-
Adds the field to the list and sets the flag if the variant returns something.
- visit(Variant) - Method in class net.emustudio.edigen.generation.GenerateMethodsVisitor
-
Writes the code for the recognized variant.
- visit(Variant) - Method in class net.emustudio.edigen.passes.MergePatternsVisitor
-
Traverses all children nodes and adds one mask and pattern as a result of joining.
- visit(Variant) - Method in class net.emustudio.edigen.passes.PushDownVariantsVisitor
-
Saves the current variant and detaches the variant from the rule if at least one variant's child is a mask.
- visit(Variant) - Method in class net.emustudio.edigen.passes.ResolveNamesVisitor
-
Associates the variant with the subrule which it returns.
- visit(Variant) - Method in class net.emustudio.edigen.passes.SemanticCheckVisitor
-
Sets the flag if the variant returns something and starts checking for subrule errors.
- visit(Variant) - Method in class net.emustudio.edigen.passes.SplitVisitor
-
Splits the mask and pattern and adds the split pieces to the variant.
- visit(Variant) - Method in class net.emustudio.edigen.Visitor
- Visitor - Class in net.emustudio.edigen
-
Generic tree node visitor.
- Visitor() - Constructor for class net.emustudio.edigen.Visitor
W
- write() - Method in class net.emustudio.edigen.misc.Template
-
Writes the whole resulting output.
- write(String) - Method in class net.emustudio.edigen.misc.PrettyPrinter
-
Writes text to the output stream as-is.
- writeLine(String) - Method in class net.emustudio.edigen.misc.PrettyPrinter
-
Indents the line as necessary and writes it to the output stream.
All Classes All Packages