Skip to content

Commit 72854d5

Browse files
committed
Cross link data type and operators and functions
1 parent cd67eaf commit 72854d5

File tree

2 files changed

+49
-14
lines changed

2 files changed

+49
-14
lines changed

articles/azure-resource-manager/bicep/bicep-functions.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ The following functions are available for working with lambda expressions. All o
9898
* [sort](bicep-functions-lambda.md#sort)
9999
* [toObject](bicep-functions-lambda.md#toobject)
100100

101-
## Logical functions
101+
## Logical function
102102

103103
The following function is available for working with logical conditions. This function is in the `sys` namespace.
104104

articles/azure-resource-manager/bicep/data-types.md

Lines changed: 48 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3,25 +3,13 @@ title: Data types in Bicep
33
description: This article describes the data types that are available in Bicep.
44
ms.topic: reference
55
ms.custom: devx-track-bicep
6-
ms.date: 08/20/2024
6+
ms.date: 11/12/2024
77
---
88

99
# Data types in Bicep
1010

1111
This article describes the data types that are supported in [Bicep](./overview.md). To define custom data types, see [User-defined data types](./user-defined-data-types.md).
1212

13-
## Supported types
14-
15-
Within Bicep, you can use these data types:
16-
17-
* [array](#arrays)
18-
* [bool](#booleans)
19-
* [int](#integers)
20-
* [object](#objects)
21-
* [secureObject (indicated by a decorator in Bicep](#secure-strings-and-objects))
22-
* [secureString (indicated by a decorator in Bicep](#secure-strings-and-objects))
23-
* [string](#strings)
24-
2513
## Arrays
2614

2715
Arrays start with a left bracket (`[`) and end with a right bracket (`]`). In Bicep, you can declare an array in a single line or in multiple lines. Commas (`,`) are used between values in single-line declarations, but they aren't used in multiple-line declarations. You can mix and match single-line and multiple-line declarations. The multiple-line declaration requires [Bicep CLI version 0.7.X or higher](./install.md).
@@ -86,6 +74,17 @@ output foo bool = empty(emptyArray) || emptyArray[0] == 'bar'
8674
output bar bool = length(numberArray) <= 3 || numberArray[3] == 4
8775
```
8876

77+
### Array-related operators
78+
79+
* Use [Comparison operators](./operators-comparison.md) to compare two arrays.
80+
* Use [Index accessor](./operators-access.md#index-accessor) to get an element from an array.
81+
* Use [Safe-dereference operator](./operator-safe-dereference.md) to access elements of an array.
82+
* Use [Spread](./operator-spread.md) to merge arrays.
83+
84+
### Array-related functions
85+
86+
See [Array functions](./bicep-functions-array.md).
87+
8988
## Booleans
9089

9190
When you specify Boolean values, use `true` or `false`. Don't surround the value with quotation marks.
@@ -94,6 +93,15 @@ When you specify Boolean values, use `true` or `false`. Don't surround the value
9493
param exampleBool bool = true
9594
```
9695

96+
## Boolean-related operators
97+
98+
* Use [Comparison operators](./operators-comparison.md) to compare boolean values.
99+
* See [Logical operators](./operators-logical.md).
100+
101+
## Boolean-related functions
102+
103+
See [Logical function](./bicep-functions-logical.md)
104+
97105
## Integers
98106

99107
When you specify integer values, don't use quotation marks.
@@ -129,6 +137,15 @@ output bar 1 | 2 | 3 = 3
129137

130138
Floating point, decimal, or binary formats aren't currently supported.
131139

140+
### Integer-related operators
141+
142+
* See [Comparison operators](./operators-comparison.md).
143+
* See [Numeric operators](./operators-numeric.md).
144+
145+
### Integer-related functions
146+
147+
See [Numeric functions](./bicep-functions-numeric.md).
148+
132149
## Objects
133150

134151
Objects start with a left brace (`{`) and end with a right brace (`}`). In Bicep, you can declare an object in a single line or in multiple lines. Each property in an object consists of a key and a value. The key and value are separated by a colon (`:`). An object allows any property of any type. Commas (`,`) are used between properties for single-line declarations, but they aren't used between properties for multiple-line declarations. You can mix and match single-line and multiple-line declarations. The multiple-line declaration requires [Bicep CLI version 0.7.X or higher](./install.md).
@@ -217,6 +234,17 @@ param objectToTest object = {
217234
output bar bool = contains(objectToTest, 'four') && objectToTest.four == 4
218235
```
219236

237+
### Object-related operators
238+
239+
* Use [Comparison operators](./operators-comparison.md) to compare objects.
240+
* Use [Index accessor](./operators-access.md#index-accessor) to get a property from an object.
241+
* Use [Safe-dereference operator](./operator-safe-dereference.md) to access object members.
242+
* Use [Spread](./operator-spread.md) to merge objects.
243+
244+
### Object-related functions
245+
246+
See [Object functions](./bicep-functions-object.md).
247+
220248
## Strings
221249

222250
In Bicep, strings are marked with single quotation marks, and you must declare them on a single line. All Unicode characters with code points between `0` and `10FFFF` are allowed.
@@ -317,6 +345,13 @@ var myVar6 = '''interpolation
317345
is ${blocked}'''
318346
```
319347

348+
### String-related operators
349+
350+
* See [Comparison operators](./operators-comparison.md).
351+
352+
### String-related functions
353+
354+
320355
## Union types
321356

322357
In Bicep, a union type allows the creation of a combined type that consists of a set of subtypes. An assignment is valid if any of the individual subtype assignments are permitted. The `|` character separates individual subtypes that use an `or` condition. For example, the syntax `a | b` means that a valid assignment could be either `a` or `b`. Union types are translated into the [allowed-value](../templates/definitions.md#allowed-values) constraint in Bicep, so only literals are permitted as members. Unions can include any number of literal-typed expressions.

0 commit comments

Comments
 (0)