byucc.jhdl.util.xmac
Class StructureParser

java.lang.Object
  extended bybyucc.jhdl.util.xmac.TagParser
      extended bybyucc.jhdl.util.xmac.StructureParser

public class StructureParser
extends TagParser

Parse the structure tag. The structure tag is one way to add other objects into the output java code. This class tries to be smart and checks the wires for width. If a generic sized wire is passed in the resulting code will take that into account and loop as many times as needed to create all the objects.

The form of the structure tag is:

  <structure name="buf">
    <param refid="i">
    <param refid="o">
  </structure>

This would create a new buf, passing the wires i and o as parameters. If the wires are generic width then this would be a buf_g cell.

Author:
Isaac E. Wagner

Field Summary
 
Fields inherited from class byucc.jhdl.util.xmac.TagParser
docInfo
 
Constructor Summary
StructureParser(DocInfo docInfo)
          The default constructor for this class.
 
Method Summary
 void parse(org.w3c.dom.Node docRoot)
          This is the actual method that does the parsing of the tag.
 
Methods inherited from class byucc.jhdl.util.xmac.TagParser
checkParent, countLines, decreaseIndent, increaseIndent, indentBlock, indentLine, indentLine, outmsg, parse, strBlockToArray, writeOutput
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

StructureParser

public StructureParser(DocInfo docInfo)
                throws java.lang.Exception
The default constructor for this class.

Parameters:
docInfo - The DocInfo object that contains the current settings and parameters.
Method Detail

parse

public void parse(org.w3c.dom.Node docRoot)
           throws java.lang.Exception
This is the actual method that does the parsing of the tag.

Overrides:
parse in class TagParser
Parameters:
docRoot - The Node of the structure tag.
Returns:
None
Throws:
java.lang.Exception


Copyright ? 2006 Brigham Young University, Configurable Computing Laboratory. All Rights Reserved.