Skip to content

Commit 4a07206

Browse files
committed
Document methods
1 parent 5cf37c6 commit 4a07206

1 file changed

Lines changed: 192 additions & 1 deletion

File tree

  • lib/node_modules/@stdlib/utils/named-typed-tuple

lib/node_modules/@stdlib/utils/named-typed-tuple/README.md

Lines changed: 192 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -872,7 +872,6 @@ var f = p2.fields;
872872
If a `predicate` function does not return a truthy value for any tuple element, the method returns `null`.
873873

874874
```javascript
875-
876875
var factory = namedtypedtuple( [ 'x', 'y', 'z' ] );
877876

878877
var p1 = factory( [ 1.0, 0.0, -1.0 ] );
@@ -914,6 +913,198 @@ var n = ctx.count;
914913
// returns 3
915914
```
916915

916+
<a name="method-find"></a>
917+
918+
#### tuple.find( predicate\[, thisArg] )
919+
920+
Returns the first tuple element for which a provided `predicate` function returns a truthy value.
921+
922+
```javascript
923+
var factory = namedtypedtuple( [ 'x', 'y', 'z' ] );
924+
925+
var tuple = factory( [ 1.0, 0.0, -1.0 ] );
926+
927+
function predicate( v ) {
928+
return ( v < 0.0 );
929+
}
930+
931+
var v = tuple.find( predicate );
932+
// returns -1.0
933+
```
934+
935+
If a `predicate` function does not return a truthy value for any tuple element, the method returns `undefined`.
936+
937+
```javascript
938+
var factory = namedtypedtuple( [ 'x', 'y', 'z' ] );
939+
940+
var tuple = factory( [ 1.0, 0.0, -1.0 ] );
941+
942+
function predicate( v ) {
943+
return ( v < -10.0 );
944+
}
945+
946+
var v = tuple.find( predicate );
947+
// returns undefined
948+
```
949+
950+
A `predicate` function is provided four arguments:
951+
952+
- `value`: tuple element
953+
- `index`: tuple index
954+
- `field`: tuple field name
955+
- `tuple`: tuple on which the method is invoked
956+
957+
To set the callback execution context, provide a `thisArg`.
958+
959+
```javascript
960+
var factory = namedtypedtuple( [ 'x', 'y', 'z' ] );
961+
962+
var tuple = factory( [ 1.0, 0.0, -1.0 ] );
963+
964+
function predicate( v ) {
965+
this.count += 1;
966+
return ( v < 0.0 );
967+
}
968+
969+
var ctx = {
970+
'count': 0
971+
};
972+
973+
var v = tuple.find( predicate, ctx );
974+
// returns -1.0
975+
976+
var n = ctx.count;
977+
// returns 3
978+
```
979+
980+
<a name="method-find-index"></a>
981+
982+
#### tuple.findIndex( predicate\[, thisArg] )
983+
984+
Returns the index of the first tuple element for which a provided `predicate` function returns a truthy value.
985+
986+
```javascript
987+
var factory = namedtypedtuple( [ 'x', 'y', 'z' ] );
988+
989+
var tuple = factory( [ 1.0, 0.0, -1.0 ] );
990+
991+
function predicate( v ) {
992+
return ( v < 0.0 );
993+
}
994+
995+
var idx = tuple.findIndex( predicate );
996+
// returns 2
997+
```
998+
999+
If a `predicate` function does not return a truthy value for any tuple element, the method returns `-1`.
1000+
1001+
```javascript
1002+
var factory = namedtypedtuple( [ 'x', 'y', 'z' ] );
1003+
1004+
var tuple = factory( [ 1.0, 0.0, -1.0 ] );
1005+
1006+
function predicate( v ) {
1007+
return ( v < -10.0 );
1008+
}
1009+
1010+
var idx = tuple.findIndex( predicate );
1011+
// returns -1
1012+
```
1013+
1014+
A `predicate` function is provided four arguments:
1015+
1016+
- `value`: tuple element
1017+
- `index`: tuple index
1018+
- `field`: tuple field name
1019+
- `tuple`: tuple on which the method is invoked
1020+
1021+
To set the callback execution context, provide a `thisArg`.
1022+
1023+
```javascript
1024+
var factory = namedtypedtuple( [ 'x', 'y', 'z' ] );
1025+
1026+
var tuple = factory( [ 1.0, 0.0, -1.0 ] );
1027+
1028+
function predicate( v ) {
1029+
this.count += 1;
1030+
return ( v < 0.0 );
1031+
}
1032+
1033+
var ctx = {
1034+
'count': 0
1035+
};
1036+
1037+
var idx = tuple.findIndex( predicate, ctx );
1038+
// returns 2
1039+
1040+
var n = ctx.count;
1041+
// returns 3
1042+
```
1043+
1044+
<a name="method-find-field"></a>
1045+
1046+
#### tuple.findField( predicate\[, thisArg] )
1047+
1048+
Returns the field of the first tuple element for which a provided `predicate` function returns a truthy value.
1049+
1050+
```javascript
1051+
var factory = namedtypedtuple( [ 'x', 'y', 'z' ] );
1052+
1053+
var tuple = factory( [ 1.0, 0.0, -1.0 ] );
1054+
1055+
function predicate( v ) {
1056+
return ( v < 0.0 );
1057+
}
1058+
1059+
var f = tuple.findField( predicate );
1060+
// returns 'z'
1061+
```
1062+
1063+
If a `predicate` function does not return a truthy value for any tuple element, the method returns `undefined`.
1064+
1065+
```javascript
1066+
var factory = namedtypedtuple( [ 'x', 'y', 'z' ] );
1067+
1068+
var tuple = factory( [ 1.0, 0.0, -1.0 ] );
1069+
1070+
function predicate( v ) {
1071+
return ( v < -10.0 );
1072+
}
1073+
1074+
var f = tuple.findField( predicate );
1075+
// returns undefined
1076+
```
1077+
1078+
A `predicate` function is provided four arguments:
1079+
1080+
- `value`: tuple element
1081+
- `index`: tuple index
1082+
- `field`: tuple field name
1083+
- `tuple`: tuple on which the method is invoked
1084+
1085+
To set the callback execution context, provide a `thisArg`.
1086+
1087+
```javascript
1088+
var factory = namedtypedtuple( [ 'x', 'y', 'z' ] );
1089+
1090+
var tuple = factory( [ 1.0, 0.0, -1.0 ] );
1091+
1092+
function predicate( v ) {
1093+
this.count += 1;
1094+
return ( v < 0.0 );
1095+
}
1096+
1097+
var ctx = {
1098+
'count': 0
1099+
};
1100+
1101+
var f = tuple.findField( predicate, ctx );
1102+
// returns 'z'
1103+
1104+
var n = ctx.count;
1105+
// returns 3
1106+
```
1107+
9171108
</section>
9181109

9191110
<!-- /.usage -->

0 commit comments

Comments
 (0)