code: private void appendPropertiesToBlock(List<MemberDefinition> props, Node block, String basePath) {
      for (MemberDefinition prop : props) {
        Node propertyNode =
            IR.exprResult(NodeUtil.newQName(compiler, basePath + prop.name.getString()));
  
        // If a property string is quoted, make sure the added prototype properties are also quoted
        if (prop.name.isQuotedString()) {
          continue;
        }
  
        propertyNode.useSourceInfoIfMissingFromForTree(prop.name);
        JSDocInfoBuilder info = JSDocInfoBuilder.maybeCopyFrom(prop.info);
  
        JSTypeExpression propType = PolymerPassStaticUtils.getTypeFromProperty(prop, compiler);
        if (propType == null) {
          return;
        }
        info.recordType(propType);
        propertyNode.getFirstChild().setJSDocInfo(info.build());
  
        block.addChildToBack(propertyNode);
      }
    }
docs: Appends all of the given properties to the given block.