code: function() {
      if (this.looksLikeSelector(true)) return this.selector();
  
      // property
      var ident = this.interpolate()
        , prop = new nodes.Property(ident)
        , ret = prop;
  
      // optional ':'
      this.accept('space');
      if (this.accept(':')) this.accept('space');
  
      this.state.push('property');
      this.inProperty = true;
      prop.expr = this.list();
      if (prop.expr.isEmpty) ret = ident[0];
      this.inProperty = false;
      this.allowPostfix = true;
      this.state.pop();
  
      // optional ';'
      this.accept(';');
  
      return ret;
    }
docs: property ':'? expression
  | ident