in rostran/providers/terraform/template_blocks.py [0:0]
def convert_to_tf_type(value: Any, type_: Optional[str] = None) -> TerraformType:
if isinstance(value, TerraformType):
return value
if type_ is None:
if isinstance(value, str):
return QuotedString(value)
elif isinstance(value, bool):
return BooleanType(value)
elif isinstance(value, (int, float)):
return NumberType(value)
elif value is None:
return NullType()
elif isinstance(value, (dict, list)):
return JsonType(value)
return LiteralType(value)
if type_ == "string":
return QuotedString(value)
elif type_ == "number":
return NumberType(value)
elif type_ == "boolean":
return BooleanType(value)
elif type_ == "null":
return NullType()
elif type_ in ("json", "dict", "list"):
return JsonType(value)
elif type_ == "comment":
return CommentType(value)
elif type_:
return LiteralType(value)