aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/scalam/m/ast/Identifier.scala
blob: 87bfa43f3caa27217b53ce8297d85434fdf35c57 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
package scalam.m.ast

case class Identifier(name: String) extends Mable{
  
  def m = name
  
  def toValid = {
    val word = name.filter(c => c.isLetterOrDigit || c == '_')
    val id = word.headOption match {
      case None => sys.error("")
      case Some(c) => if (!c.isLetter) 'x' + word else word
    }
    Identifier(id)
  }
}