summaryrefslogtreecommitdiff
path: root/core/src/main
diff options
context:
space:
mode:
authorAdam Izraelevitz2020-09-14 10:17:49 -0700
committerGitHub2020-09-14 17:17:49 +0000
commit69e27b2fd9e02d4e3a024eec0cafce5b4b46c10a (patch)
treeda496ac9fcc2ae6d02560edf9cf10d10e9b3964b /core/src/main
parent3b5fda0c604b393833769250ade9f7d13ca4e5e7 (diff)
Documentation and minor plugin changes. (#1573)
* Added documentation. Bugfix in plugin. Moved plugin APIs to separate package * Revert reg naming behavior (omit underscore) * Added documentation and a test * Addressed reviewer feedback.
Diffstat (limited to 'core/src/main')
-rw-r--r--core/src/main/scala/chisel3/experimental/package.scala9
-rw-r--r--core/src/main/scala/chisel3/internal/Builder.scala2
-rw-r--r--core/src/main/scala/chisel3/internal/plugin/package.scala22
3 files changed, 23 insertions, 10 deletions
diff --git a/core/src/main/scala/chisel3/experimental/package.scala b/core/src/main/scala/chisel3/experimental/package.scala
index 71fd186c..12631512 100644
--- a/core/src/main/scala/chisel3/experimental/package.scala
+++ b/core/src/main/scala/chisel3/experimental/package.scala
@@ -141,13 +141,4 @@ package object experimental {
val prefix = chisel3.internal.prefix
// Use to remove prefixes not in provided scope
val noPrefix = chisel3.internal.noPrefix
- // Used by Chisel's compiler plugin to automatically name signals
- def autoNameRecursively[T <: Any](name: String, nameMe: T): T = {
- chisel3.internal.Builder.nameRecursively(
- name.replace(" ", ""),
- nameMe,
- (id: chisel3.internal.HasId, n: String) => id.autoSeed(n)
- )
- nameMe
- }
}
diff --git a/core/src/main/scala/chisel3/internal/Builder.scala b/core/src/main/scala/chisel3/internal/Builder.scala
index e55f1af7..741a2498 100644
--- a/core/src/main/scala/chisel3/internal/Builder.scala
+++ b/core/src/main/scala/chisel3/internal/Builder.scala
@@ -119,7 +119,7 @@ private[chisel3] trait HasId extends InstanceId {
* @param seed Seed for the name of this component
* @return this object
*/
- def autoSeed(seed: String): this.type = {
+ private [chisel3] def autoSeed(seed: String): this.type = {
auto_seed = Some(seed)
for(hook <- auto_postseed_hooks) { hook(seed) }
prefix_seed = Builder.getPrefix()
diff --git a/core/src/main/scala/chisel3/internal/plugin/package.scala b/core/src/main/scala/chisel3/internal/plugin/package.scala
new file mode 100644
index 00000000..6d78b1c3
--- /dev/null
+++ b/core/src/main/scala/chisel3/internal/plugin/package.scala
@@ -0,0 +1,22 @@
+// See LICENSE for license details.
+
+package chisel3.internal
+
+package object plugin {
+ /** Used by Chisel's compiler plugin to automatically name signals
+ * DO NOT USE in your normal Chisel code!!!
+ *
+ * @param name The name to use
+ * @param nameMe The thing to be named
+ * @tparam T The type of the thing to be named
+ * @return The thing, but now named
+ */
+ def autoNameRecursively[T <: Any](name: String, nameMe: T): T = {
+ chisel3.internal.Builder.nameRecursively(
+ name.replace(" ", ""),
+ nameMe,
+ (id: chisel3.internal.HasId, n: String) => id.autoSeed(n)
+ )
+ nameMe
+ }
+}